0s autopkgtest [18:36:43]: starting date and time: 2025-05-06 18:36:43+0000 0s autopkgtest [18:36:43]: git checkout: 9986aa8c Merge branch 'skia/fix_network_interface' into 'ubuntu/production' 0s autopkgtest [18:36:43]: host juju-7f2275-prod-proposed-migration-environment-20; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.45cv54v4/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:tzdata --apt-upgrade glib2.0 --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=tzdata/2025b-1ubuntu1.1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-cpu2-ram4-disk20-arm64 --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-20@sto01-arm64-10.secgroup --name adt-plucky-arm64-glib2.0-20250506-183642-juju-7f2275-prod-proposed-migration-environment-20-17afa83c-fdf9-4057-b611-075aacd876b4 --image adt/ubuntu-plucky-arm64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-20 --net-id=net_prod-autopkgtest-workers-arm64 -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 61s autopkgtest [18:37:44]: testbed dpkg architecture: arm64 62s autopkgtest [18:37:45]: testbed apt version: 3.0.0 62s autopkgtest [18:37:45]: @@@@@@@@@@@@@@@@@@@@ test bed setup 62s autopkgtest [18:37:45]: testbed release detected to be: None 63s autopkgtest [18:37:46]: updating testbed package index (apt update) 63s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 63s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 63s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 63s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 63s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5196 B] 63s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [5840 B] 63s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 c-n-f Metadata [252 B] 63s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 c-n-f Metadata [224 B] 63s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [16.6 kB] 63s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 c-n-f Metadata [8288 B] 63s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 c-n-f Metadata [324 B] 64s Fetched 302 kB in 0s (762 kB/s) 65s Reading package lists... 65s autopkgtest [18:37:48]: upgrading testbed (apt dist-upgrade and autopurge) 65s Reading package lists... 66s Building dependency tree... 66s Reading state information... 66s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 66s Starting 2 pkgProblemResolver with broken count: 0 66s Done 67s Entering ResolveByKeep 67s 67s Calculating upgrade... 68s The following packages will be upgraded: 68s tzdata 68s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 68s Need to get 198 kB of archives. 68s After this operation, 0 B of additional disk space will be used. 68s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 tzdata all 2025b-1ubuntu1.1 [198 kB] 68s Preconfiguring packages ... 68s Fetched 198 kB in 0s (1334 kB/s) 68s (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 ... 85224 files and directories currently installed.) 68s Preparing to unpack .../tzdata_2025b-1ubuntu1.1_all.deb ... 68s Unpacking tzdata (2025b-1ubuntu1.1) over (2025b-1ubuntu1) ... 69s Setting up tzdata (2025b-1ubuntu1.1) ... 69s 69s Current default time zone: 'Etc/UTC' 69s Local time is now: Tue May 6 18:37:52 UTC 2025. 69s Universal Time is now: Tue May 6 18:37:52 UTC 2025. 69s Run 'dpkg-reconfigure tzdata' if you wish to change it. 69s 69s Reading package lists... 69s Building dependency tree... 69s Reading state information... 70s Starting pkgProblemResolver with broken count: 0 70s Starting 2 pkgProblemResolver with broken count: 0 70s Done 70s Solving dependencies... 70s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 73s autopkgtest [18:37:56]: testbed running kernel: Linux 6.14.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Sun Apr 6 14:37:51 UTC 2025 73s autopkgtest [18:37:56]: @@@@@@@@@@@@@@@@@@@@ apt-source glib2.0 81s Get:1 http://ftpmaster.internal/ubuntu plucky/main glib2.0 2.84.1-1 (dsc) [4812 B] 81s Get:2 http://ftpmaster.internal/ubuntu plucky/main glib2.0 2.84.1-1 (tar) [661 kB] 81s Get:3 http://ftpmaster.internal/ubuntu plucky/main glib2.0 2.84.1-1 (tar) [5615 kB] 81s Get:4 http://ftpmaster.internal/ubuntu plucky/main glib2.0 2.84.1-1 (diff) [136 kB] 81s gpgv: Signature made Fri Apr 4 19:02:25 2025 UTC 81s gpgv: using RSA key 4D0BE12F0E4776D8AACE9696E66C775AEBFE6C7D 81s gpgv: Can't check signature: No public key 81s dpkg-source: warning: cannot verify inline signature for ./glib2.0_2.84.1-1.dsc: no acceptable signature found 82s autopkgtest [18:38:05]: testing package glib2.0 version 2.84.1-1 87s autopkgtest [18:38:10]: build not needed 98s autopkgtest [18:38:21]: test build: preparing testbed 98s Reading package lists... 98s Building dependency tree... 98s Reading state information... 98s Starting pkgProblemResolver with broken count: 0 98s Starting 2 pkgProblemResolver with broken count: 0 98s Done 99s The following NEW packages will be installed: 99s build-essential cpp cpp-14 cpp-14-aarch64-linux-gnu cpp-aarch64-linux-gnu 99s g++ g++-14 g++-14-aarch64-linux-gnu g++-aarch64-linux-gnu gcc gcc-14 99s gcc-14-aarch64-linux-gnu gcc-aarch64-linux-gnu libasan8 libblkid-dev 99s libcc1-0 libffi-dev libgcc-14-dev libgio-2.0-dev libgomp1 libhwasan0 99s libisl23 libitm1 liblsan0 libmount-dev libmpc3 libpcre2-16-0 libpcre2-32-0 99s libpcre2-dev libpcre2-posix3 libpkgconf3 libselinux1-dev libsepol-dev 99s libstdc++-14-dev libsysprof-capture-4-dev libtsan2 libubsan1 pkgconf 99s pkgconf-bin uuid-dev zlib1g-dev 99s 0 upgraded, 41 newly installed, 0 to remove and 0 not upgraded. 99s Need to get 65.1 MB of archives. 99s After this operation, 229 MB of additional disk space will be used. 99s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 libisl23 arm64 0.27-1 [676 kB] 99s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 libmpc3 arm64 1.3.1-1build2 [56.8 kB] 99s Get:3 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-14-aarch64-linux-gnu arm64 14.2.0-19ubuntu2 [10.6 MB] 99s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-14 arm64 14.2.0-19ubuntu2 [1026 B] 99s Get:5 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-aarch64-linux-gnu arm64 4:14.2.0-1ubuntu1 [5558 B] 99s Get:6 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp arm64 4:14.2.0-1ubuntu1 [22.4 kB] 99s Get:7 http://ftpmaster.internal/ubuntu plucky/main arm64 libcc1-0 arm64 15-20250404-0ubuntu1 [49.1 kB] 99s Get:8 http://ftpmaster.internal/ubuntu plucky/main arm64 libgomp1 arm64 15-20250404-0ubuntu1 [147 kB] 99s Get:9 http://ftpmaster.internal/ubuntu plucky/main arm64 libitm1 arm64 15-20250404-0ubuntu1 [27.8 kB] 99s Get:10 http://ftpmaster.internal/ubuntu plucky/main arm64 libasan8 arm64 15-20250404-0ubuntu1 [2922 kB] 99s Get:11 http://ftpmaster.internal/ubuntu plucky/main arm64 liblsan0 arm64 15-20250404-0ubuntu1 [1318 kB] 99s Get:12 http://ftpmaster.internal/ubuntu plucky/main arm64 libtsan2 arm64 15-20250404-0ubuntu1 [2692 kB] 100s Get:13 http://ftpmaster.internal/ubuntu plucky/main arm64 libubsan1 arm64 15-20250404-0ubuntu1 [1177 kB] 100s Get:14 http://ftpmaster.internal/ubuntu plucky/main arm64 libhwasan0 arm64 15-20250404-0ubuntu1 [1640 kB] 100s Get:15 http://ftpmaster.internal/ubuntu plucky/main arm64 libgcc-14-dev arm64 14.2.0-19ubuntu2 [2593 kB] 100s Get:16 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-14-aarch64-linux-gnu arm64 14.2.0-19ubuntu2 [20.9 MB] 100s Get:17 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-14 arm64 14.2.0-19ubuntu2 [529 kB] 100s Get:18 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-aarch64-linux-gnu arm64 4:14.2.0-1ubuntu1 [1200 B] 100s Get:19 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc arm64 4:14.2.0-1ubuntu1 [4998 B] 100s Get:20 http://ftpmaster.internal/ubuntu plucky/main arm64 libstdc++-14-dev arm64 14.2.0-19ubuntu2 [2501 kB] 100s Get:21 http://ftpmaster.internal/ubuntu plucky/main arm64 g++-14-aarch64-linux-gnu arm64 14.2.0-19ubuntu2 [12.1 MB] 100s Get:22 http://ftpmaster.internal/ubuntu plucky/main arm64 g++-14 arm64 14.2.0-19ubuntu2 [23.0 kB] 100s Get:23 http://ftpmaster.internal/ubuntu plucky/main arm64 g++-aarch64-linux-gnu arm64 4:14.2.0-1ubuntu1 [956 B] 100s Get:24 http://ftpmaster.internal/ubuntu plucky/main arm64 g++ arm64 4:14.2.0-1ubuntu1 [1080 B] 100s Get:25 http://ftpmaster.internal/ubuntu plucky/main arm64 build-essential arm64 12.12ubuntu1 [5082 B] 100s Get:26 http://ftpmaster.internal/ubuntu plucky/main arm64 libffi-dev arm64 3.4.7-1 [59.5 kB] 100s Get:27 http://ftpmaster.internal/ubuntu plucky/main arm64 uuid-dev arm64 2.40.2-14ubuntu1 [55.2 kB] 100s Get:28 http://ftpmaster.internal/ubuntu plucky/main arm64 libblkid-dev arm64 2.40.2-14ubuntu1 [243 kB] 100s Get:29 http://ftpmaster.internal/ubuntu plucky/main arm64 libsepol-dev arm64 3.7-1 [416 kB] 100s Get:30 http://ftpmaster.internal/ubuntu plucky/main arm64 libpcre2-16-0 arm64 10.45-1 [222 kB] 100s Get:31 http://ftpmaster.internal/ubuntu plucky/main arm64 libpcre2-32-0 arm64 10.45-1 [210 kB] 100s Get:32 http://ftpmaster.internal/ubuntu plucky/main arm64 libpcre2-posix3 arm64 10.45-1 [7084 B] 100s Get:33 http://ftpmaster.internal/ubuntu plucky/main arm64 libpcre2-dev arm64 10.45-1 [768 kB] 100s Get:34 http://ftpmaster.internal/ubuntu plucky/main arm64 libselinux1-dev arm64 3.7-3ubuntu3 [174 kB] 100s Get:35 http://ftpmaster.internal/ubuntu plucky/main arm64 libmount-dev arm64 2.40.2-14ubuntu1 [34.6 kB] 100s Get:36 http://ftpmaster.internal/ubuntu plucky/main arm64 libsysprof-capture-4-dev arm64 48.0-2 [55.1 kB] 100s Get:37 http://ftpmaster.internal/ubuntu plucky/main arm64 libpkgconf3 arm64 1.8.1-4 [31.4 kB] 100s Get:38 http://ftpmaster.internal/ubuntu plucky/main arm64 pkgconf-bin arm64 1.8.1-4 [20.9 kB] 100s Get:39 http://ftpmaster.internal/ubuntu plucky/main arm64 pkgconf arm64 1.8.1-4 [16.7 kB] 100s Get:40 http://ftpmaster.internal/ubuntu plucky/main arm64 zlib1g-dev arm64 1:1.3.dfsg+really1.3.1-1ubuntu1 [894 kB] 100s Get:41 http://ftpmaster.internal/ubuntu plucky/main arm64 libgio-2.0-dev arm64 2.84.1-1 [1917 kB] 101s Fetched 65.1 MB in 1s (47.3 MB/s) 101s Selecting previously unselected package libisl23:arm64. 101s (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 ... 85224 files and directories currently installed.) 101s Preparing to unpack .../00-libisl23_0.27-1_arm64.deb ... 101s Unpacking libisl23:arm64 (0.27-1) ... 101s Selecting previously unselected package libmpc3:arm64. 101s Preparing to unpack .../01-libmpc3_1.3.1-1build2_arm64.deb ... 101s Unpacking libmpc3:arm64 (1.3.1-1build2) ... 101s Selecting previously unselected package cpp-14-aarch64-linux-gnu. 101s Preparing to unpack .../02-cpp-14-aarch64-linux-gnu_14.2.0-19ubuntu2_arm64.deb ... 101s Unpacking cpp-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 101s Selecting previously unselected package cpp-14. 101s Preparing to unpack .../03-cpp-14_14.2.0-19ubuntu2_arm64.deb ... 101s Unpacking cpp-14 (14.2.0-19ubuntu2) ... 101s Selecting previously unselected package cpp-aarch64-linux-gnu. 101s Preparing to unpack .../04-cpp-aarch64-linux-gnu_4%3a14.2.0-1ubuntu1_arm64.deb ... 101s Unpacking cpp-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 101s Selecting previously unselected package cpp. 101s Preparing to unpack .../05-cpp_4%3a14.2.0-1ubuntu1_arm64.deb ... 101s Unpacking cpp (4:14.2.0-1ubuntu1) ... 101s Selecting previously unselected package libcc1-0:arm64. 101s Preparing to unpack .../06-libcc1-0_15-20250404-0ubuntu1_arm64.deb ... 101s Unpacking libcc1-0:arm64 (15-20250404-0ubuntu1) ... 101s Selecting previously unselected package libgomp1:arm64. 101s Preparing to unpack .../07-libgomp1_15-20250404-0ubuntu1_arm64.deb ... 101s Unpacking libgomp1:arm64 (15-20250404-0ubuntu1) ... 101s Selecting previously unselected package libitm1:arm64. 101s Preparing to unpack .../08-libitm1_15-20250404-0ubuntu1_arm64.deb ... 101s Unpacking libitm1:arm64 (15-20250404-0ubuntu1) ... 101s Selecting previously unselected package libasan8:arm64. 101s Preparing to unpack .../09-libasan8_15-20250404-0ubuntu1_arm64.deb ... 101s Unpacking libasan8:arm64 (15-20250404-0ubuntu1) ... 101s Selecting previously unselected package liblsan0:arm64. 101s Preparing to unpack .../10-liblsan0_15-20250404-0ubuntu1_arm64.deb ... 101s Unpacking liblsan0:arm64 (15-20250404-0ubuntu1) ... 101s Selecting previously unselected package libtsan2:arm64. 101s Preparing to unpack .../11-libtsan2_15-20250404-0ubuntu1_arm64.deb ... 101s Unpacking libtsan2:arm64 (15-20250404-0ubuntu1) ... 101s Selecting previously unselected package libubsan1:arm64. 102s Preparing to unpack .../12-libubsan1_15-20250404-0ubuntu1_arm64.deb ... 102s Unpacking libubsan1:arm64 (15-20250404-0ubuntu1) ... 102s Selecting previously unselected package libhwasan0:arm64. 102s Preparing to unpack .../13-libhwasan0_15-20250404-0ubuntu1_arm64.deb ... 102s Unpacking libhwasan0:arm64 (15-20250404-0ubuntu1) ... 102s Selecting previously unselected package libgcc-14-dev:arm64. 102s Preparing to unpack .../14-libgcc-14-dev_14.2.0-19ubuntu2_arm64.deb ... 102s Unpacking libgcc-14-dev:arm64 (14.2.0-19ubuntu2) ... 102s Selecting previously unselected package gcc-14-aarch64-linux-gnu. 102s Preparing to unpack .../15-gcc-14-aarch64-linux-gnu_14.2.0-19ubuntu2_arm64.deb ... 102s Unpacking gcc-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 102s Selecting previously unselected package gcc-14. 102s Preparing to unpack .../16-gcc-14_14.2.0-19ubuntu2_arm64.deb ... 102s Unpacking gcc-14 (14.2.0-19ubuntu2) ... 102s Selecting previously unselected package gcc-aarch64-linux-gnu. 102s Preparing to unpack .../17-gcc-aarch64-linux-gnu_4%3a14.2.0-1ubuntu1_arm64.deb ... 102s Unpacking gcc-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 102s Selecting previously unselected package gcc. 102s Preparing to unpack .../18-gcc_4%3a14.2.0-1ubuntu1_arm64.deb ... 102s Unpacking gcc (4:14.2.0-1ubuntu1) ... 102s Selecting previously unselected package libstdc++-14-dev:arm64. 102s Preparing to unpack .../19-libstdc++-14-dev_14.2.0-19ubuntu2_arm64.deb ... 102s Unpacking libstdc++-14-dev:arm64 (14.2.0-19ubuntu2) ... 102s Selecting previously unselected package g++-14-aarch64-linux-gnu. 102s Preparing to unpack .../20-g++-14-aarch64-linux-gnu_14.2.0-19ubuntu2_arm64.deb ... 102s Unpacking g++-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 103s Selecting previously unselected package g++-14. 103s Preparing to unpack .../21-g++-14_14.2.0-19ubuntu2_arm64.deb ... 103s Unpacking g++-14 (14.2.0-19ubuntu2) ... 103s Selecting previously unselected package g++-aarch64-linux-gnu. 103s Preparing to unpack .../22-g++-aarch64-linux-gnu_4%3a14.2.0-1ubuntu1_arm64.deb ... 103s Unpacking g++-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 103s Selecting previously unselected package g++. 103s Preparing to unpack .../23-g++_4%3a14.2.0-1ubuntu1_arm64.deb ... 103s Unpacking g++ (4:14.2.0-1ubuntu1) ... 103s Selecting previously unselected package build-essential. 103s Preparing to unpack .../24-build-essential_12.12ubuntu1_arm64.deb ... 103s Unpacking build-essential (12.12ubuntu1) ... 103s Selecting previously unselected package libffi-dev:arm64. 103s Preparing to unpack .../25-libffi-dev_3.4.7-1_arm64.deb ... 103s Unpacking libffi-dev:arm64 (3.4.7-1) ... 103s Selecting previously unselected package uuid-dev:arm64. 103s Preparing to unpack .../26-uuid-dev_2.40.2-14ubuntu1_arm64.deb ... 103s Unpacking uuid-dev:arm64 (2.40.2-14ubuntu1) ... 103s Selecting previously unselected package libblkid-dev:arm64. 103s Preparing to unpack .../27-libblkid-dev_2.40.2-14ubuntu1_arm64.deb ... 103s Unpacking libblkid-dev:arm64 (2.40.2-14ubuntu1) ... 103s Selecting previously unselected package libsepol-dev:arm64. 103s Preparing to unpack .../28-libsepol-dev_3.7-1_arm64.deb ... 103s Unpacking libsepol-dev:arm64 (3.7-1) ... 103s Selecting previously unselected package libpcre2-16-0:arm64. 103s Preparing to unpack .../29-libpcre2-16-0_10.45-1_arm64.deb ... 103s Unpacking libpcre2-16-0:arm64 (10.45-1) ... 103s Selecting previously unselected package libpcre2-32-0:arm64. 103s Preparing to unpack .../30-libpcre2-32-0_10.45-1_arm64.deb ... 103s Unpacking libpcre2-32-0:arm64 (10.45-1) ... 103s Selecting previously unselected package libpcre2-posix3:arm64. 103s Preparing to unpack .../31-libpcre2-posix3_10.45-1_arm64.deb ... 103s Unpacking libpcre2-posix3:arm64 (10.45-1) ... 103s Selecting previously unselected package libpcre2-dev:arm64. 103s Preparing to unpack .../32-libpcre2-dev_10.45-1_arm64.deb ... 103s Unpacking libpcre2-dev:arm64 (10.45-1) ... 103s Selecting previously unselected package libselinux1-dev:arm64. 103s Preparing to unpack .../33-libselinux1-dev_3.7-3ubuntu3_arm64.deb ... 103s Unpacking libselinux1-dev:arm64 (3.7-3ubuntu3) ... 103s Selecting previously unselected package libmount-dev:arm64. 103s Preparing to unpack .../34-libmount-dev_2.40.2-14ubuntu1_arm64.deb ... 103s Unpacking libmount-dev:arm64 (2.40.2-14ubuntu1) ... 103s Selecting previously unselected package libsysprof-capture-4-dev:arm64. 103s Preparing to unpack .../35-libsysprof-capture-4-dev_48.0-2_arm64.deb ... 103s Unpacking libsysprof-capture-4-dev:arm64 (48.0-2) ... 103s Selecting previously unselected package libpkgconf3:arm64. 103s Preparing to unpack .../36-libpkgconf3_1.8.1-4_arm64.deb ... 103s Unpacking libpkgconf3:arm64 (1.8.1-4) ... 103s Selecting previously unselected package pkgconf-bin. 103s Preparing to unpack .../37-pkgconf-bin_1.8.1-4_arm64.deb ... 103s Unpacking pkgconf-bin (1.8.1-4) ... 103s Selecting previously unselected package pkgconf:arm64. 103s Preparing to unpack .../38-pkgconf_1.8.1-4_arm64.deb ... 103s Unpacking pkgconf:arm64 (1.8.1-4) ... 103s Selecting previously unselected package zlib1g-dev:arm64. 103s Preparing to unpack .../39-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1ubuntu1_arm64.deb ... 103s Unpacking zlib1g-dev:arm64 (1:1.3.dfsg+really1.3.1-1ubuntu1) ... 103s Selecting previously unselected package libgio-2.0-dev:arm64. 103s Preparing to unpack .../40-libgio-2.0-dev_2.84.1-1_arm64.deb ... 103s Unpacking libgio-2.0-dev:arm64 (2.84.1-1) ... 103s Setting up libgomp1:arm64 (15-20250404-0ubuntu1) ... 103s Setting up libffi-dev:arm64 (3.4.7-1) ... 103s Setting up libpcre2-16-0:arm64 (10.45-1) ... 103s Setting up libsysprof-capture-4-dev:arm64 (48.0-2) ... 103s Setting up libpcre2-32-0:arm64 (10.45-1) ... 103s Setting up libpkgconf3:arm64 (1.8.1-4) ... 103s Setting up uuid-dev:arm64 (2.40.2-14ubuntu1) ... 103s Setting up libmpc3:arm64 (1.3.1-1build2) ... 103s Setting up libsepol-dev:arm64 (3.7-1) ... 103s Setting up pkgconf-bin (1.8.1-4) ... 103s Setting up libubsan1:arm64 (15-20250404-0ubuntu1) ... 103s Setting up zlib1g-dev:arm64 (1:1.3.dfsg+really1.3.1-1ubuntu1) ... 103s Setting up libpcre2-posix3:arm64 (10.45-1) ... 103s Setting up libhwasan0:arm64 (15-20250404-0ubuntu1) ... 103s Setting up libasan8:arm64 (15-20250404-0ubuntu1) ... 103s Setting up libtsan2:arm64 (15-20250404-0ubuntu1) ... 103s Setting up libisl23:arm64 (0.27-1) ... 103s Setting up libcc1-0:arm64 (15-20250404-0ubuntu1) ... 103s Setting up liblsan0:arm64 (15-20250404-0ubuntu1) ... 103s Setting up libitm1:arm64 (15-20250404-0ubuntu1) ... 103s Setting up libblkid-dev:arm64 (2.40.2-14ubuntu1) ... 103s Setting up libpcre2-dev:arm64 (10.45-1) ... 103s Setting up libselinux1-dev:arm64 (3.7-3ubuntu3) ... 103s Setting up pkgconf:arm64 (1.8.1-4) ... 103s Setting up cpp-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 103s Setting up libgcc-14-dev:arm64 (14.2.0-19ubuntu2) ... 103s Setting up libstdc++-14-dev:arm64 (14.2.0-19ubuntu2) ... 103s Setting up libmount-dev:arm64 (2.40.2-14ubuntu1) ... 103s Setting up libgio-2.0-dev:arm64 (2.84.1-1) ... 103s Setting up cpp-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 103s Setting up cpp-14 (14.2.0-19ubuntu2) ... 103s Setting up cpp (4:14.2.0-1ubuntu1) ... 103s Setting up gcc-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 103s Setting up gcc-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 103s Setting up g++-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 103s Setting up gcc-14 (14.2.0-19ubuntu2) ... 103s Setting up g++-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 103s Setting up g++-14 (14.2.0-19ubuntu2) ... 103s Setting up gcc (4:14.2.0-1ubuntu1) ... 103s Setting up g++ (4:14.2.0-1ubuntu1) ... 103s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 103s Setting up build-essential (12.12ubuntu1) ... 103s Processing triggers for libc-bin (2.41-6ubuntu1) ... 103s Processing triggers for man-db (2.13.0-1) ... 104s Processing triggers for libglib2.0-0t64:arm64 (2.84.1-1) ... 104s No schema files found: doing nothing. 104s Processing triggers for install-info (7.1.1-1) ... 105s autopkgtest [18:38:28]: test build: [----------------------- 105s + mode=dynamic 105s + getopt -o --long static -n debian/tests/build -- 105s + getopt_temp= -- 105s + eval set -- -- 105s + set -- -- 105s + true 105s + shift 105s + break 105s + mktemp -d 105s + WORKDIR=/tmp/tmp.4qwBruMzxe 105s + trap rm -rf "${WORKDIR}" 0 INT QUIT ABRT PIPE TERM 105s + cd /tmp/tmp.4qwBruMzxe 105s + [ -n ] 105s + CROSS_COMPILE= 105s + cat 105s + cat 105s + cat 105s + cat 105s + cat 105s + cat 105s + cflags= 105s + pcflags= 105s + packages=glib-2.0 105s + pkg-config --cflags --libs glib-2.0 105s + gcc -o glib-dynamic glib.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lglib-2.0 105s build (glib, dynamic): OK 105s + echo build (glib, dynamic): OK 105s + [ -x glib-dynamic ] 105s + foo=bar ./glib-dynamic 105s + echo run (glib, dynamic): OK 105s + cflags= 105s + pcflags= 105s + packages=gobject-2.0 105s run (glib, dynamic): OK 105s + pkg-config --cflags --libs gobject-2.0 105s + gcc -o gobject-dynamic gobject.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgobject-2.0 -lglib-2.0 106s + echo build (gobject, dynamic): OK 106s + [ -x gobject-dynamic ] 106s + foo=bar ./gobject-dynamic 106s build (gobject, dynamic): OK 106s + echo run (gobject, dynamic): OK 106s + cflags= 106s + pcflags= 106s + packages=gio-2.0 106s + pkg-config --cflags --libs gio-2.0 106s run (gobject, dynamic): OK 106s + gcc -o gio-dynamic gio.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 106s build (gio, dynamic): OK 106s + echo build (gio, dynamic): OK 106s + [ -x gio-dynamic ] 106s + foo=bar ./gio-dynamic 106s + echo run (gio, dynamic): OK 106s + cflags= 106s + pcflags= 106s + packages=gio-unix-2.0 106s run (gio, dynamic): OK 106s + pkg-config --cflags --libs gio-unix-2.0 106s + gcc -o gio-unix-dynamic gio-unix.c -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 106s build (gio-unix, dynamic): OK 106s run (gio-unix, dynamic): OK 106s + echo build (gio-unix, dynamic): OK 106s + [ -x gio-unix-dynamic ] 106s + foo=bar ./gio-unix-dynamic 106s + echo run (gio-unix, dynamic): OK 106s + cflags= 106s + pcflags= 106s + packages=gmodule-2.0 106s + pkg-config --cflags --libs gmodule-2.0 106s + gcc -o gmodule-dynamic gmodule.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 106s build (gmodule, dynamic): OK 106s + echo build (gmodule, dynamic): OK 106s + [ -x gmodule-dynamic ] 106s + foo=bar ./gmodule-dynamic 106s + echo run (gmodule, dynamic): OK 106s + cflags= 106s + pcflags= 106s + packages=gthread-2.0 106s + pkg-config --cflags --libs gthread-2.0 106s run (gmodule, dynamic): OK 106s + gcc -o gthread-dynamic gthread.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgthread-2.0 -pthread -lglib-2.0 106s + echo build (gthread, dynamic): OK 106s + [ -x gthread-dynamic ] 106s + foo=bar ./gthread-dynamic 106s build (gthread, dynamic): OK 106s + echo run (gthread, dynamic): OK 106s + rm -rf /tmp/tmp.4qwBruMzxe 106s run (gthread, dynamic): OK 106s autopkgtest [18:38:29]: test build: -----------------------] 107s autopkgtest [18:38:30]: test build: - - - - - - - - - - results - - - - - - - - - - 107s build PASS (superficial) 107s autopkgtest [18:38:30]: test build-static: preparing testbed 107s Reading package lists... 107s Building dependency tree... 107s Reading state information... 108s Starting pkgProblemResolver with broken count: 0 108s Starting 2 pkgProblemResolver with broken count: 0 108s Done 108s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 109s autopkgtest [18:38:32]: test build-static: [----------------------- 109s + mode=dynamic 109s + getopt -o --long static -n debian/tests/build -- --static 109s + getopt_temp= --static -- 109s + eval set -- --static -- 109s + set -- --static -- 109s + true 109s + mode=static 109s + shift 109s + continue 109s + true 109s + shift 109s + break 109s + mktemp -d 109s + WORKDIR=/tmp/tmp.E09rVWRnnb 109s + trap rm -rf "${WORKDIR}" 0 INT QUIT ABRT PIPE TERM 109s + cd /tmp/tmp.E09rVWRnnb 109s + [ -n ] 109s + CROSS_COMPILE= 109s + cat 109s + cat 109s + cat 109s + cat 109s + cat 109s + cat 109s + cflags= 109s + pcflags= 109s + packages=glib-2.0 109s + cflags=-static 109s + pcflags=--static 109s + pkg-config --static --cflags --libs glib-2.0 109s + gcc -static -o glib-static glib.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -pthread -lpcre2-8 109s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 109s (.text+0xf8): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 109s /usr/bin/ld: (.text+0x2a0): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 109s /usr/bin/ld: (.text+0x12c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s build (glib, static): OK 110s + echo build (glib, static): OK 110s + [ -x glib-static ] 110s + foo=bar ./glib-static 110s + echo run (glib, static): OK 110s + cflags= 110s + pcflags= 110s + packages=gobject-2.0 110s + cflags=-static 110s + pcflags=--static 110s run (glib, static): OK 110s + pkg-config --static --cflags --libs gobject-2.0 110s + gcc -static -o gobject-static gobject.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgobject-2.0 -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -pthread -lpcre2-8 -lffi 110s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 110s (.text+0xf8): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s /usr/bin/ld: (.text+0x2a0): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s /usr/bin/ld: (.text+0x12c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s build (gobject, static): OK 110s + echo build (gobject, static): OK 110s + [ -x gobject-static ] 110s + foo=bar ./gobject-static 110s run (gobject, static): OK 110s + echo run (gobject, static): OK 110s + cflags= 110s + pcflags= 110s + packages=gio-2.0 110s + cflags=-static 110s + pcflags=--static 110s + continue 110s + cflags= 110s + pcflags= 110s + packages=gio-unix-2.0 110s + cflags=-static 110s + pcflags=--static 110s + continue 110s + cflags= 110s + pcflags= 110s + packages=gmodule-2.0 110s + cflags=-static 110s + pcflags=--static 110s + pkg-config --static --cflags --libs gmodule-2.0 110s + gcc -static -o gmodule-static gmodule.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 -pthread -lpcre2-8 -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -pthread -lpcre2-8 110s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libgmodule-2.0.a(gmodule.c.o): in function `g_module_open_full': 110s (.text+0x604): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 110s (.text+0xf8): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s /usr/bin/ld: (.text+0x2a0): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s /usr/bin/ld: (.text+0x12c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s build (gmodule, static): OK 110s + echo build (gmodule, static): OK 110s + [ -x gmodule-static ] 110s + foo=bar ./gmodule-static 110s run (gmodule, static): OK 110s + echo run (gmodule, static): OK 110s + cflags= 110s + pcflags= 110s + packages=gthread-2.0 110s + cflags=-static 110s + pcflags=--static 110s + pkg-config --static --cflags --libs gthread-2.0 110s + gcc -static -o gthread-static gthread.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 -pthread -lpcre2-8 110s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 110s (.text+0xf8): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s /usr/bin/ld: (.text+0x2a0): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s /usr/bin/ld: (.text+0x12c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 110s build (gthread, static): OK 110s + echo build (gthread, static): OK 110s + [ -x gthread-static ] 110s + foo=bar ./gthread-static 110s run (gthread, static): OK 110s + echo run (gthread, static): OK 110s + rm -rf /tmp/tmp.E09rVWRnnb 110s autopkgtest [18:38:33]: test build-static: -----------------------] 111s autopkgtest [18:38:34]: test build-static: - - - - - - - - - - results - - - - - - - - - - 111s build-static PASS (superficial) 111s autopkgtest [18:38:34]: test girepository-tools: preparing testbed 178s autopkgtest [18:39:41]: testbed dpkg architecture: arm64 178s autopkgtest [18:39:41]: testbed apt version: 3.0.0 179s autopkgtest [18:39:42]: @@@@@@@@@@@@@@@@@@@@ test bed setup 179s autopkgtest [18:39:42]: testbed release detected to be: plucky 179s autopkgtest [18:39:42]: updating testbed package index (apt update) 180s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 180s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 180s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 180s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 180s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5196 B] 180s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [5840 B] 180s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 c-n-f Metadata [252 B] 180s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 c-n-f Metadata [224 B] 180s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [16.6 kB] 180s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 c-n-f Metadata [8288 B] 180s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 c-n-f Metadata [324 B] 181s Fetched 302 kB in 0s (758 kB/s) 182s Reading package lists... 182s autopkgtest [18:39:45]: upgrading testbed (apt dist-upgrade and autopurge) 182s Reading package lists... 182s Building dependency tree... 182s Reading state information... 183s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 183s Starting 2 pkgProblemResolver with broken count: 0 183s Done 184s Entering ResolveByKeep 184s 184s Calculating upgrade... 184s The following packages will be upgraded: 184s tzdata 184s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 184s Need to get 198 kB of archives. 184s After this operation, 0 B of additional disk space will be used. 184s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 tzdata all 2025b-1ubuntu1.1 [198 kB] 185s Preconfiguring packages ... 185s Fetched 198 kB in 0s (15.1 MB/s) 185s (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 ... 85224 files and directories currently installed.) 185s Preparing to unpack .../tzdata_2025b-1ubuntu1.1_all.deb ... 185s Unpacking tzdata (2025b-1ubuntu1.1) over (2025b-1ubuntu1) ... 185s Setting up tzdata (2025b-1ubuntu1.1) ... 185s 185s Current default time zone: 'Etc/UTC' 185s Local time is now: Tue May 6 18:39:48 UTC 2025. 185s Universal Time is now: Tue May 6 18:39:48 UTC 2025. 185s Run 'dpkg-reconfigure tzdata' if you wish to change it. 185s 185s Reading package lists... 186s Building dependency tree... 186s Reading state information... 186s Starting pkgProblemResolver with broken count: 0 186s Starting 2 pkgProblemResolver with broken count: 0 186s Done 186s Solving dependencies... 187s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 192s Reading package lists... 192s Building dependency tree... 192s Reading state information... 193s Starting pkgProblemResolver with broken count: 0 193s Starting 2 pkgProblemResolver with broken count: 0 193s Done 193s The following NEW packages will be installed: 193s gir1.2-glib-2.0-dev girepository-tools libgirepository-2.0-0 193s native-architecture 193s 0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded. 193s Need to get 1044 kB of archives. 193s After this operation, 12.8 MB of additional disk space will be used. 193s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 gir1.2-glib-2.0-dev arm64 2.84.1-1 [862 kB] 194s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 native-architecture all 0.2.6 [2140 B] 194s Get:3 http://ftpmaster.internal/ubuntu plucky/main arm64 libgirepository-2.0-0 arm64 2.84.1-1 [73.2 kB] 194s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 girepository-tools arm64 2.84.1-1 [106 kB] 194s Fetched 1044 kB in 0s (3530 kB/s) 194s Selecting previously unselected package gir1.2-glib-2.0-dev:arm64. 194s (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 ... 85224 files and directories currently installed.) 194s Preparing to unpack .../gir1.2-glib-2.0-dev_2.84.1-1_arm64.deb ... 194s Unpacking gir1.2-glib-2.0-dev:arm64 (2.84.1-1) ... 194s Selecting previously unselected package native-architecture. 194s Preparing to unpack .../native-architecture_0.2.6_all.deb ... 194s Unpacking native-architecture (0.2.6) ... 194s Selecting previously unselected package libgirepository-2.0-0:arm64. 194s Preparing to unpack .../libgirepository-2.0-0_2.84.1-1_arm64.deb ... 194s Unpacking libgirepository-2.0-0:arm64 (2.84.1-1) ... 194s Selecting previously unselected package girepository-tools:arm64. 194s Preparing to unpack .../girepository-tools_2.84.1-1_arm64.deb ... 194s Unpacking girepository-tools:arm64 (2.84.1-1) ... 194s Setting up native-architecture (0.2.6) ... 194s Setting up libgirepository-2.0-0:arm64 (2.84.1-1) ... 194s Setting up gir1.2-glib-2.0-dev:arm64 (2.84.1-1) ... 194s Setting up girepository-tools:arm64 (2.84.1-1) ... 194s Processing triggers for man-db (2.13.0-1) ... 195s Processing triggers for libc-bin (2.41-6ubuntu1) ... 197s autopkgtest [18:40:00]: test girepository-tools: [----------------------- 198s + cd /tmp/autopkgtest.TvVmSg/autopkgtest_tmp 198s + dpkg-architecture -qDEB_HOST_GNU_TYPE 198s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 198s + DEB_HOST_GNU_TYPE=aarch64-linux-gnu 198s + dpkg-architecture -qDEB_HOST_MULTIARCH 198s dpkg-architecture: warning: cannot determine CC system type, falling back to default (native compilation) 198s + DEB_HOST_MULTIARCH=aarch64-linux-gnu 198s + aarch64-linux-gnu-gi-inspect-typelib --print-typelibs --typelib-version=2.0 GObject 198s + aarch64-linux-gnu-gi-compile-repository -o GLib.typelib /usr/lib/aarch64-linux-gnu/gir-1.0/GLib-2.0.gir 198s typelib: GLib-2.0 198s + aarch64-linux-gnu-gi-decompile-typelib -o GLib.gir GLib.typelib 198s autopkgtest [18:40:01]: test girepository-tools: -----------------------] 198s autopkgtest [18:40:01]: test girepository-tools: - - - - - - - - - - results - - - - - - - - - - 198s girepository-tools PASS (superficial) 199s autopkgtest [18:40:02]: test libgio-2.0-dev-bin: preparing testbed 256s autopkgtest [18:40:59]: testbed dpkg architecture: arm64 256s autopkgtest [18:40:59]: testbed apt version: 3.0.0 256s autopkgtest [18:40:59]: @@@@@@@@@@@@@@@@@@@@ test bed setup 256s autopkgtest [18:40:59]: testbed release detected to be: plucky 257s autopkgtest [18:41:00]: updating testbed package index (apt update) 257s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 257s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 257s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 257s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 257s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5196 B] 257s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [5840 B] 257s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 c-n-f Metadata [252 B] 257s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 c-n-f Metadata [224 B] 258s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [16.6 kB] 258s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 c-n-f Metadata [8288 B] 258s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 c-n-f Metadata [324 B] 259s Fetched 302 kB in 0s (744 kB/s) 259s Reading package lists... 260s autopkgtest [18:41:03]: upgrading testbed (apt dist-upgrade and autopurge) 260s Reading package lists... 260s Building dependency tree... 260s Reading state information... 261s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 261s Starting 2 pkgProblemResolver with broken count: 0 261s Done 261s Entering ResolveByKeep 262s 262s Calculating upgrade... 262s The following packages will be upgraded: 262s tzdata 262s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 262s Need to get 198 kB of archives. 262s After this operation, 0 B of additional disk space will be used. 262s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 tzdata all 2025b-1ubuntu1.1 [198 kB] 263s Preconfiguring packages ... 263s Fetched 198 kB in 0s (8295 kB/s) 263s (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 ... 85224 files and directories currently installed.) 263s Preparing to unpack .../tzdata_2025b-1ubuntu1.1_all.deb ... 263s Unpacking tzdata (2025b-1ubuntu1.1) over (2025b-1ubuntu1) ... 263s Setting up tzdata (2025b-1ubuntu1.1) ... 263s 263s Current default time zone: 'Etc/UTC' 263s Local time is now: Tue May 6 18:41:06 UTC 2025. 263s Universal Time is now: Tue May 6 18:41:06 UTC 2025. 263s Run 'dpkg-reconfigure tzdata' if you wish to change it. 263s 263s Reading package lists... 264s Building dependency tree... 264s Reading state information... 264s Starting pkgProblemResolver with broken count: 0 264s Starting 2 pkgProblemResolver with broken count: 0 264s Done 264s Solving dependencies... 265s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 267s Reading package lists... 267s Building dependency tree... 267s Reading state information... 268s Starting pkgProblemResolver with broken count: 0 268s Starting 2 pkgProblemResolver with broken count: 0 268s Done 269s The following NEW packages will be installed: 269s libgio-2.0-dev-bin 269s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 269s Need to get 129 kB of archives. 269s After this operation, 817 kB of additional disk space will be used. 269s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 libgio-2.0-dev-bin arm64 2.84.1-1 [129 kB] 269s Fetched 129 kB in 0s (7886 kB/s) 269s Selecting previously unselected package libgio-2.0-dev-bin. 269s (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 ... 85224 files and directories currently installed.) 269s Preparing to unpack .../libgio-2.0-dev-bin_2.84.1-1_arm64.deb ... 269s Unpacking libgio-2.0-dev-bin (2.84.1-1) ... 269s Setting up libgio-2.0-dev-bin (2.84.1-1) ... 269s Processing triggers for man-db (2.13.0-1) ... 273s autopkgtest [18:41:16]: test libgio-2.0-dev-bin: [----------------------- 273s + gdbus-codegen --help 273s usage: gdbus-codegen [-h] [--interface-prefix PREFIX] 273s [--c-namespace NAMESPACE] [--c-generate-object-manager] 273s [--c-generate-autocleanup {none,objects,all}] 273s [--generate-docbook OUTFILES] [--generate-md OUTFILES] 273s [--generate-rst OUTFILES] [--pragma-once] 273s [--annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE] 273s [--glib-min-required VERSION] 273s [--glib-max-allowed VERSION] 273s [--symbol-decorator SYMBOL_DECORATOR] 273s [--symbol-decorator-header SYMBOL_DECORATOR_HEADER] 273s [--symbol-decorator-define SYMBOL_DECORATOR_DEFINE] 273s [--generate-c-code OUTFILES | --header | --body | 273s --interface-info-header | --interface-info-body] 273s [--output FILE | --output-directory OUTDIR] 273s FILE [FILE ...] 273s 273s D-Bus code and documentation generator 273s 273s positional arguments: 273s FILE D-Bus introspection XML file 273s 273s options: 273s -h, --help show this help message and exit 273s --interface-prefix PREFIX 273s String to strip from D-Bus interface names for code 273s and docs 273s --c-namespace NAMESPACE 273s The namespace to use for generated C code 273s --c-generate-object-manager 273s Generate a GDBusObjectManagerClient subclass when 273s generating C code 273s --c-generate-autocleanup {none,objects,all} 273s Generate autocleanup support 273s --generate-docbook OUTFILES 273s Generate Docbook in OUTFILES-org.Project.IFace.xml 273s --generate-md OUTFILES 273s Generate Markdown in OUTFILES-org.Project.IFace.md 273s --generate-rst OUTFILES 273s Generate reStructuredText in OUTFILES- 273s org.Project.IFace.rst 273s --pragma-once Use "pragma once" as the inclusion guard 273s --annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE 273s Add annotation (may be used several times) 273s --glib-min-required VERSION 273s Minimum version of GLib to be supported by the 273s outputted code (default: 2.30) 273s --glib-max-allowed VERSION 273s Maximum version of GLib to be used by the outputted 273s code (default: current GLib version) 273s --symbol-decorator SYMBOL_DECORATOR 273s Macro used to decorate a symbol in the outputted 273s header, possibly to export symbols 273s --symbol-decorator-header SYMBOL_DECORATOR_HEADER 273s Additional header required for decorator specified by 273s --symbol-decorator 273s --symbol-decorator-define SYMBOL_DECORATOR_DEFINE 273s Additional define required for decorator specified by 273s --symbol-decorator 273s --generate-c-code OUTFILES 273s Generate C code in OUTFILES.[ch] 273s --header Generate C headers 273s --body Generate C code 273s --interface-info-header 273s Generate GDBusInterfaceInfo C header 273s --interface-info-body 273s Generate GDBusInterfaceInfo C code 273s --output FILE Write output into the specified file 273s --output-directory OUTDIR 273s Location to output generated files 273s + glib-compile-resources --version 273s 2.84.1 273s + glib-genmarshal --version 273s glib-genmarshal version 2.84.1 273s glib-genmarshal comes with ABSOLUTELY NO WARRANTY. 273s You may redistribute copies of glib-genmarshal under the terms of 273s the GNU General Public License which can be found in the 273s GLib source package. Sources, examples and contact 273s information are available at http://www.gtk.org 273s + glib-gettextize --version 273s + glib-mkenums --version 273s /usr/bin/glib-gettextize (GNU glib) 2.84.1 273s Copyright (C) 1995-1998, 2000, 2001 Free Software Foundation, Inc. 273s This is free software; see the source for copying conditions. There is NO 273s warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 273s Written by Ulrich Drepper 273s glib-mkenums version 2.84.1 273s glib-mkenums comes with ABSOLUTELY NO WARRANTY. 273s You may redistribute copies of glib-mkenums under the terms of 273s the GNU General Public License which can be found in the 273s GLib source package. Sources, examples and contact 273s information are available at http://www.gtk.org 273s + gobject-query tree 273s GObject 273s + gtester --version 273s gtester version 2.84.1 273s + gtester-report --version 273s gtester-report (GLib utils) version 2.84.1. 273s autopkgtest [18:41:16]: test libgio-2.0-dev-bin: -----------------------] 274s autopkgtest [18:41:17]: test libgio-2.0-dev-bin: - - - - - - - - - - results - - - - - - - - - - 274s libgio-2.0-dev-bin PASS (superficial) 274s autopkgtest [18:41:17]: test libglib2.0-dev: preparing testbed 352s autopkgtest [18:42:35]: testbed dpkg architecture: arm64 352s autopkgtest [18:42:35]: testbed apt version: 3.0.0 352s autopkgtest [18:42:35]: @@@@@@@@@@@@@@@@@@@@ test bed setup 352s autopkgtest [18:42:35]: testbed release detected to be: plucky 353s autopkgtest [18:42:36]: updating testbed package index (apt update) 353s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 353s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 353s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 353s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 353s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5196 B] 353s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [5840 B] 353s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 c-n-f Metadata [252 B] 353s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 c-n-f Metadata [224 B] 353s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [16.6 kB] 353s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 c-n-f Metadata [8288 B] 353s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 c-n-f Metadata [324 B] 354s Fetched 302 kB in 0s (662 kB/s) 355s Reading package lists... 356s autopkgtest [18:42:39]: upgrading testbed (apt dist-upgrade and autopurge) 356s Reading package lists... 356s Building dependency tree... 356s Reading state information... 356s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 357s Starting 2 pkgProblemResolver with broken count: 0 357s Done 357s Entering ResolveByKeep 357s 357s Calculating upgrade... 358s The following packages will be upgraded: 358s tzdata 358s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 358s Need to get 198 kB of archives. 358s After this operation, 0 B of additional disk space will be used. 358s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 tzdata all 2025b-1ubuntu1.1 [198 kB] 358s Preconfiguring packages ... 358s Fetched 198 kB in 0s (12.5 MB/s) 358s (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 ... 85224 files and directories currently installed.) 358s Preparing to unpack .../tzdata_2025b-1ubuntu1.1_all.deb ... 358s Unpacking tzdata (2025b-1ubuntu1.1) over (2025b-1ubuntu1) ... 359s Setting up tzdata (2025b-1ubuntu1.1) ... 359s 359s Current default time zone: 'Etc/UTC' 359s Local time is now: Tue May 6 18:42:42 UTC 2025. 359s Universal Time is now: Tue May 6 18:42:42 UTC 2025. 359s Run 'dpkg-reconfigure tzdata' if you wish to change it. 359s 359s Reading package lists... 359s Building dependency tree... 359s Reading state information... 360s Starting pkgProblemResolver with broken count: 0 360s Starting 2 pkgProblemResolver with broken count: 0 360s Done 360s Solving dependencies... 360s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 363s Reading package lists... 363s Building dependency tree... 363s Reading state information... 363s Starting pkgProblemResolver with broken count: 0 363s Starting 2 pkgProblemResolver with broken count: 0 363s Done 364s The following NEW packages will be installed: 364s build-essential cpp cpp-14 cpp-14-aarch64-linux-gnu cpp-aarch64-linux-gnu 364s g++ g++-14 g++-14-aarch64-linux-gnu g++-aarch64-linux-gnu gcc gcc-14 364s gcc-14-aarch64-linux-gnu gcc-aarch64-linux-gnu gir1.2-glib-2.0-dev 364s girepository-tools libasan8 libblkid-dev libcc1-0 libffi-dev libgcc-14-dev 364s libgio-2.0-dev libgio-2.0-dev-bin libgirepository-2.0-0 libglib2.0-bin 364s libglib2.0-dev libglib2.0-dev-bin libgomp1 libhwasan0 libisl23 libitm1 364s liblsan0 libmount-dev libmpc3 libpcre2-16-0 libpcre2-32-0 libpcre2-dev 364s libpcre2-posix3 libpkgconf3 libselinux1-dev libsepol-dev libstdc++-14-dev 364s libsysprof-capture-4-dev libtsan2 libubsan1 native-architecture pkgconf 364s pkgconf-bin uuid-dev zlib1g-dev 364s 0 upgraded, 49 newly installed, 0 to remove and 0 not upgraded. 364s Need to get 66.5 MB of archives. 364s After this operation, 243 MB of additional disk space will be used. 364s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 libisl23 arm64 0.27-1 [676 kB] 364s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 libmpc3 arm64 1.3.1-1build2 [56.8 kB] 364s Get:3 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-14-aarch64-linux-gnu arm64 14.2.0-19ubuntu2 [10.6 MB] 364s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-14 arm64 14.2.0-19ubuntu2 [1026 B] 364s Get:5 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp-aarch64-linux-gnu arm64 4:14.2.0-1ubuntu1 [5558 B] 364s Get:6 http://ftpmaster.internal/ubuntu plucky/main arm64 cpp arm64 4:14.2.0-1ubuntu1 [22.4 kB] 364s Get:7 http://ftpmaster.internal/ubuntu plucky/main arm64 libcc1-0 arm64 15-20250404-0ubuntu1 [49.1 kB] 364s Get:8 http://ftpmaster.internal/ubuntu plucky/main arm64 libgomp1 arm64 15-20250404-0ubuntu1 [147 kB] 364s Get:9 http://ftpmaster.internal/ubuntu plucky/main arm64 libitm1 arm64 15-20250404-0ubuntu1 [27.8 kB] 364s Get:10 http://ftpmaster.internal/ubuntu plucky/main arm64 libasan8 arm64 15-20250404-0ubuntu1 [2922 kB] 364s Get:11 http://ftpmaster.internal/ubuntu plucky/main arm64 liblsan0 arm64 15-20250404-0ubuntu1 [1318 kB] 364s Get:12 http://ftpmaster.internal/ubuntu plucky/main arm64 libtsan2 arm64 15-20250404-0ubuntu1 [2692 kB] 364s Get:13 http://ftpmaster.internal/ubuntu plucky/main arm64 libubsan1 arm64 15-20250404-0ubuntu1 [1177 kB] 365s Get:14 http://ftpmaster.internal/ubuntu plucky/main arm64 libhwasan0 arm64 15-20250404-0ubuntu1 [1640 kB] 365s Get:15 http://ftpmaster.internal/ubuntu plucky/main arm64 libgcc-14-dev arm64 14.2.0-19ubuntu2 [2593 kB] 365s Get:16 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-14-aarch64-linux-gnu arm64 14.2.0-19ubuntu2 [20.9 MB] 365s Get:17 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-14 arm64 14.2.0-19ubuntu2 [529 kB] 365s Get:18 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc-aarch64-linux-gnu arm64 4:14.2.0-1ubuntu1 [1200 B] 365s Get:19 http://ftpmaster.internal/ubuntu plucky/main arm64 gcc arm64 4:14.2.0-1ubuntu1 [4998 B] 365s Get:20 http://ftpmaster.internal/ubuntu plucky/main arm64 libstdc++-14-dev arm64 14.2.0-19ubuntu2 [2501 kB] 365s Get:21 http://ftpmaster.internal/ubuntu plucky/main arm64 g++-14-aarch64-linux-gnu arm64 14.2.0-19ubuntu2 [12.1 MB] 365s Get:22 http://ftpmaster.internal/ubuntu plucky/main arm64 g++-14 arm64 14.2.0-19ubuntu2 [23.0 kB] 365s Get:23 http://ftpmaster.internal/ubuntu plucky/main arm64 g++-aarch64-linux-gnu arm64 4:14.2.0-1ubuntu1 [956 B] 365s Get:24 http://ftpmaster.internal/ubuntu plucky/main arm64 g++ arm64 4:14.2.0-1ubuntu1 [1080 B] 365s Get:25 http://ftpmaster.internal/ubuntu plucky/main arm64 build-essential arm64 12.12ubuntu1 [5082 B] 365s Get:26 http://ftpmaster.internal/ubuntu plucky/main arm64 gir1.2-glib-2.0-dev arm64 2.84.1-1 [862 kB] 365s Get:27 http://ftpmaster.internal/ubuntu plucky/main arm64 native-architecture all 0.2.6 [2140 B] 365s Get:28 http://ftpmaster.internal/ubuntu plucky/main arm64 libgirepository-2.0-0 arm64 2.84.1-1 [73.2 kB] 365s Get:29 http://ftpmaster.internal/ubuntu plucky/main arm64 girepository-tools arm64 2.84.1-1 [106 kB] 365s Get:30 http://ftpmaster.internal/ubuntu plucky/main arm64 libffi-dev arm64 3.4.7-1 [59.5 kB] 365s Get:31 http://ftpmaster.internal/ubuntu plucky/main arm64 uuid-dev arm64 2.40.2-14ubuntu1 [55.2 kB] 365s Get:32 http://ftpmaster.internal/ubuntu plucky/main arm64 libblkid-dev arm64 2.40.2-14ubuntu1 [243 kB] 365s Get:33 http://ftpmaster.internal/ubuntu plucky/main arm64 libsepol-dev arm64 3.7-1 [416 kB] 365s Get:34 http://ftpmaster.internal/ubuntu plucky/main arm64 libpcre2-16-0 arm64 10.45-1 [222 kB] 365s Get:35 http://ftpmaster.internal/ubuntu plucky/main arm64 libpcre2-32-0 arm64 10.45-1 [210 kB] 365s Get:36 http://ftpmaster.internal/ubuntu plucky/main arm64 libpcre2-posix3 arm64 10.45-1 [7084 B] 365s Get:37 http://ftpmaster.internal/ubuntu plucky/main arm64 libpcre2-dev arm64 10.45-1 [768 kB] 365s Get:38 http://ftpmaster.internal/ubuntu plucky/main arm64 libselinux1-dev arm64 3.7-3ubuntu3 [174 kB] 365s Get:39 http://ftpmaster.internal/ubuntu plucky/main arm64 libmount-dev arm64 2.40.2-14ubuntu1 [34.6 kB] 365s Get:40 http://ftpmaster.internal/ubuntu plucky/main arm64 libsysprof-capture-4-dev arm64 48.0-2 [55.1 kB] 365s Get:41 http://ftpmaster.internal/ubuntu plucky/main arm64 libpkgconf3 arm64 1.8.1-4 [31.4 kB] 365s Get:42 http://ftpmaster.internal/ubuntu plucky/main arm64 pkgconf-bin arm64 1.8.1-4 [20.9 kB] 365s Get:43 http://ftpmaster.internal/ubuntu plucky/main arm64 pkgconf arm64 1.8.1-4 [16.7 kB] 365s Get:44 http://ftpmaster.internal/ubuntu plucky/main arm64 zlib1g-dev arm64 1:1.3.dfsg+really1.3.1-1ubuntu1 [894 kB] 365s Get:45 http://ftpmaster.internal/ubuntu plucky/main arm64 libgio-2.0-dev arm64 2.84.1-1 [1917 kB] 365s Get:46 http://ftpmaster.internal/ubuntu plucky/main arm64 libgio-2.0-dev-bin arm64 2.84.1-1 [129 kB] 365s Get:47 http://ftpmaster.internal/ubuntu plucky/main arm64 libglib2.0-bin arm64 2.84.1-1 [98.1 kB] 365s Get:48 http://ftpmaster.internal/ubuntu plucky/main arm64 libglib2.0-dev-bin arm64 2.84.1-1 [18.1 kB] 365s Get:49 http://ftpmaster.internal/ubuntu plucky/main arm64 libglib2.0-dev arm64 2.84.1-1 [18.9 kB] 366s Fetched 66.5 MB in 2s (43.4 MB/s) 366s Selecting previously unselected package libisl23:arm64. 366s (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 ... 85224 files and directories currently installed.) 366s Preparing to unpack .../00-libisl23_0.27-1_arm64.deb ... 366s Unpacking libisl23:arm64 (0.27-1) ... 366s Selecting previously unselected package libmpc3:arm64. 366s Preparing to unpack .../01-libmpc3_1.3.1-1build2_arm64.deb ... 366s Unpacking libmpc3:arm64 (1.3.1-1build2) ... 366s Selecting previously unselected package cpp-14-aarch64-linux-gnu. 366s Preparing to unpack .../02-cpp-14-aarch64-linux-gnu_14.2.0-19ubuntu2_arm64.deb ... 366s Unpacking cpp-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 366s Selecting previously unselected package cpp-14. 366s Preparing to unpack .../03-cpp-14_14.2.0-19ubuntu2_arm64.deb ... 366s Unpacking cpp-14 (14.2.0-19ubuntu2) ... 366s Selecting previously unselected package cpp-aarch64-linux-gnu. 366s Preparing to unpack .../04-cpp-aarch64-linux-gnu_4%3a14.2.0-1ubuntu1_arm64.deb ... 366s Unpacking cpp-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 366s Selecting previously unselected package cpp. 366s Preparing to unpack .../05-cpp_4%3a14.2.0-1ubuntu1_arm64.deb ... 366s Unpacking cpp (4:14.2.0-1ubuntu1) ... 366s Selecting previously unselected package libcc1-0:arm64. 366s Preparing to unpack .../06-libcc1-0_15-20250404-0ubuntu1_arm64.deb ... 366s Unpacking libcc1-0:arm64 (15-20250404-0ubuntu1) ... 366s Selecting previously unselected package libgomp1:arm64. 366s Preparing to unpack .../07-libgomp1_15-20250404-0ubuntu1_arm64.deb ... 366s Unpacking libgomp1:arm64 (15-20250404-0ubuntu1) ... 366s Selecting previously unselected package libitm1:arm64. 366s Preparing to unpack .../08-libitm1_15-20250404-0ubuntu1_arm64.deb ... 366s Unpacking libitm1:arm64 (15-20250404-0ubuntu1) ... 366s Selecting previously unselected package libasan8:arm64. 366s Preparing to unpack .../09-libasan8_15-20250404-0ubuntu1_arm64.deb ... 366s Unpacking libasan8:arm64 (15-20250404-0ubuntu1) ... 366s Selecting previously unselected package liblsan0:arm64. 366s Preparing to unpack .../10-liblsan0_15-20250404-0ubuntu1_arm64.deb ... 366s Unpacking liblsan0:arm64 (15-20250404-0ubuntu1) ... 366s Selecting previously unselected package libtsan2:arm64. 366s Preparing to unpack .../11-libtsan2_15-20250404-0ubuntu1_arm64.deb ... 366s Unpacking libtsan2:arm64 (15-20250404-0ubuntu1) ... 366s Selecting previously unselected package libubsan1:arm64. 366s Preparing to unpack .../12-libubsan1_15-20250404-0ubuntu1_arm64.deb ... 366s Unpacking libubsan1:arm64 (15-20250404-0ubuntu1) ... 366s Selecting previously unselected package libhwasan0:arm64. 366s Preparing to unpack .../13-libhwasan0_15-20250404-0ubuntu1_arm64.deb ... 366s Unpacking libhwasan0:arm64 (15-20250404-0ubuntu1) ... 366s Selecting previously unselected package libgcc-14-dev:arm64. 366s Preparing to unpack .../14-libgcc-14-dev_14.2.0-19ubuntu2_arm64.deb ... 366s Unpacking libgcc-14-dev:arm64 (14.2.0-19ubuntu2) ... 367s Selecting previously unselected package gcc-14-aarch64-linux-gnu. 367s Preparing to unpack .../15-gcc-14-aarch64-linux-gnu_14.2.0-19ubuntu2_arm64.deb ... 367s Unpacking gcc-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 367s Selecting previously unselected package gcc-14. 367s Preparing to unpack .../16-gcc-14_14.2.0-19ubuntu2_arm64.deb ... 367s Unpacking gcc-14 (14.2.0-19ubuntu2) ... 367s Selecting previously unselected package gcc-aarch64-linux-gnu. 367s Preparing to unpack .../17-gcc-aarch64-linux-gnu_4%3a14.2.0-1ubuntu1_arm64.deb ... 367s Unpacking gcc-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 367s Selecting previously unselected package gcc. 367s Preparing to unpack .../18-gcc_4%3a14.2.0-1ubuntu1_arm64.deb ... 367s Unpacking gcc (4:14.2.0-1ubuntu1) ... 367s Selecting previously unselected package libstdc++-14-dev:arm64. 367s Preparing to unpack .../19-libstdc++-14-dev_14.2.0-19ubuntu2_arm64.deb ... 367s Unpacking libstdc++-14-dev:arm64 (14.2.0-19ubuntu2) ... 367s Selecting previously unselected package g++-14-aarch64-linux-gnu. 367s Preparing to unpack .../20-g++-14-aarch64-linux-gnu_14.2.0-19ubuntu2_arm64.deb ... 367s Unpacking g++-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 367s Selecting previously unselected package g++-14. 367s Preparing to unpack .../21-g++-14_14.2.0-19ubuntu2_arm64.deb ... 367s Unpacking g++-14 (14.2.0-19ubuntu2) ... 367s Selecting previously unselected package g++-aarch64-linux-gnu. 367s Preparing to unpack .../22-g++-aarch64-linux-gnu_4%3a14.2.0-1ubuntu1_arm64.deb ... 367s Unpacking g++-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 367s Selecting previously unselected package g++. 367s Preparing to unpack .../23-g++_4%3a14.2.0-1ubuntu1_arm64.deb ... 367s Unpacking g++ (4:14.2.0-1ubuntu1) ... 367s Selecting previously unselected package build-essential. 367s Preparing to unpack .../24-build-essential_12.12ubuntu1_arm64.deb ... 367s Unpacking build-essential (12.12ubuntu1) ... 367s Selecting previously unselected package gir1.2-glib-2.0-dev:arm64. 367s Preparing to unpack .../25-gir1.2-glib-2.0-dev_2.84.1-1_arm64.deb ... 367s Unpacking gir1.2-glib-2.0-dev:arm64 (2.84.1-1) ... 368s Selecting previously unselected package native-architecture. 368s Preparing to unpack .../26-native-architecture_0.2.6_all.deb ... 368s Unpacking native-architecture (0.2.6) ... 368s Selecting previously unselected package libgirepository-2.0-0:arm64. 368s Preparing to unpack .../27-libgirepository-2.0-0_2.84.1-1_arm64.deb ... 368s Unpacking libgirepository-2.0-0:arm64 (2.84.1-1) ... 368s Selecting previously unselected package girepository-tools:arm64. 368s Preparing to unpack .../28-girepository-tools_2.84.1-1_arm64.deb ... 368s Unpacking girepository-tools:arm64 (2.84.1-1) ... 368s Selecting previously unselected package libffi-dev:arm64. 368s Preparing to unpack .../29-libffi-dev_3.4.7-1_arm64.deb ... 368s Unpacking libffi-dev:arm64 (3.4.7-1) ... 368s Selecting previously unselected package uuid-dev:arm64. 368s Preparing to unpack .../30-uuid-dev_2.40.2-14ubuntu1_arm64.deb ... 368s Unpacking uuid-dev:arm64 (2.40.2-14ubuntu1) ... 368s Selecting previously unselected package libblkid-dev:arm64. 368s Preparing to unpack .../31-libblkid-dev_2.40.2-14ubuntu1_arm64.deb ... 368s Unpacking libblkid-dev:arm64 (2.40.2-14ubuntu1) ... 368s Selecting previously unselected package libsepol-dev:arm64. 368s Preparing to unpack .../32-libsepol-dev_3.7-1_arm64.deb ... 368s Unpacking libsepol-dev:arm64 (3.7-1) ... 368s Selecting previously unselected package libpcre2-16-0:arm64. 368s Preparing to unpack .../33-libpcre2-16-0_10.45-1_arm64.deb ... 368s Unpacking libpcre2-16-0:arm64 (10.45-1) ... 368s Selecting previously unselected package libpcre2-32-0:arm64. 368s Preparing to unpack .../34-libpcre2-32-0_10.45-1_arm64.deb ... 368s Unpacking libpcre2-32-0:arm64 (10.45-1) ... 368s Selecting previously unselected package libpcre2-posix3:arm64. 368s Preparing to unpack .../35-libpcre2-posix3_10.45-1_arm64.deb ... 368s Unpacking libpcre2-posix3:arm64 (10.45-1) ... 368s Selecting previously unselected package libpcre2-dev:arm64. 368s Preparing to unpack .../36-libpcre2-dev_10.45-1_arm64.deb ... 368s Unpacking libpcre2-dev:arm64 (10.45-1) ... 368s Selecting previously unselected package libselinux1-dev:arm64. 368s Preparing to unpack .../37-libselinux1-dev_3.7-3ubuntu3_arm64.deb ... 368s Unpacking libselinux1-dev:arm64 (3.7-3ubuntu3) ... 368s Selecting previously unselected package libmount-dev:arm64. 368s Preparing to unpack .../38-libmount-dev_2.40.2-14ubuntu1_arm64.deb ... 368s Unpacking libmount-dev:arm64 (2.40.2-14ubuntu1) ... 368s Selecting previously unselected package libsysprof-capture-4-dev:arm64. 368s Preparing to unpack .../39-libsysprof-capture-4-dev_48.0-2_arm64.deb ... 368s Unpacking libsysprof-capture-4-dev:arm64 (48.0-2) ... 368s Selecting previously unselected package libpkgconf3:arm64. 368s Preparing to unpack .../40-libpkgconf3_1.8.1-4_arm64.deb ... 368s Unpacking libpkgconf3:arm64 (1.8.1-4) ... 368s Selecting previously unselected package pkgconf-bin. 368s Preparing to unpack .../41-pkgconf-bin_1.8.1-4_arm64.deb ... 368s Unpacking pkgconf-bin (1.8.1-4) ... 368s Selecting previously unselected package pkgconf:arm64. 368s Preparing to unpack .../42-pkgconf_1.8.1-4_arm64.deb ... 368s Unpacking pkgconf:arm64 (1.8.1-4) ... 368s Selecting previously unselected package zlib1g-dev:arm64. 368s Preparing to unpack .../43-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1ubuntu1_arm64.deb ... 368s Unpacking zlib1g-dev:arm64 (1:1.3.dfsg+really1.3.1-1ubuntu1) ... 368s Selecting previously unselected package libgio-2.0-dev:arm64. 368s Preparing to unpack .../44-libgio-2.0-dev_2.84.1-1_arm64.deb ... 368s Unpacking libgio-2.0-dev:arm64 (2.84.1-1) ... 368s Selecting previously unselected package libgio-2.0-dev-bin. 368s Preparing to unpack .../45-libgio-2.0-dev-bin_2.84.1-1_arm64.deb ... 368s Unpacking libgio-2.0-dev-bin (2.84.1-1) ... 368s Selecting previously unselected package libglib2.0-bin. 368s Preparing to unpack .../46-libglib2.0-bin_2.84.1-1_arm64.deb ... 368s Unpacking libglib2.0-bin (2.84.1-1) ... 368s Selecting previously unselected package libglib2.0-dev-bin. 368s Preparing to unpack .../47-libglib2.0-dev-bin_2.84.1-1_arm64.deb ... 368s Unpacking libglib2.0-dev-bin (2.84.1-1) ... 368s Selecting previously unselected package libglib2.0-dev:arm64. 368s Preparing to unpack .../48-libglib2.0-dev_2.84.1-1_arm64.deb ... 368s Unpacking libglib2.0-dev:arm64 (2.84.1-1) ... 368s Setting up libgio-2.0-dev-bin (2.84.1-1) ... 369s Setting up native-architecture (0.2.6) ... 369s Setting up libgirepository-2.0-0:arm64 (2.84.1-1) ... 369s Setting up libglib2.0-bin (2.84.1-1) ... 369s Setting up libgomp1:arm64 (15-20250404-0ubuntu1) ... 369s Setting up libffi-dev:arm64 (3.4.7-1) ... 369s Setting up libpcre2-16-0:arm64 (10.45-1) ... 369s Setting up libsysprof-capture-4-dev:arm64 (48.0-2) ... 369s Setting up libpcre2-32-0:arm64 (10.45-1) ... 369s Setting up libpkgconf3:arm64 (1.8.1-4) ... 369s Setting up uuid-dev:arm64 (2.40.2-14ubuntu1) ... 369s Setting up libmpc3:arm64 (1.3.1-1build2) ... 369s Setting up libsepol-dev:arm64 (3.7-1) ... 369s Setting up pkgconf-bin (1.8.1-4) ... 369s Setting up libubsan1:arm64 (15-20250404-0ubuntu1) ... 369s Setting up zlib1g-dev:arm64 (1:1.3.dfsg+really1.3.1-1ubuntu1) ... 369s Setting up libpcre2-posix3:arm64 (10.45-1) ... 369s Setting up gir1.2-glib-2.0-dev:arm64 (2.84.1-1) ... 369s Setting up libhwasan0:arm64 (15-20250404-0ubuntu1) ... 369s Setting up libasan8:arm64 (15-20250404-0ubuntu1) ... 369s Setting up libtsan2:arm64 (15-20250404-0ubuntu1) ... 369s Setting up libisl23:arm64 (0.27-1) ... 369s Setting up libcc1-0:arm64 (15-20250404-0ubuntu1) ... 369s Setting up liblsan0:arm64 (15-20250404-0ubuntu1) ... 369s Setting up libitm1:arm64 (15-20250404-0ubuntu1) ... 369s Setting up libblkid-dev:arm64 (2.40.2-14ubuntu1) ... 369s Setting up girepository-tools:arm64 (2.84.1-1) ... 369s Setting up libpcre2-dev:arm64 (10.45-1) ... 369s Setting up libselinux1-dev:arm64 (3.7-3ubuntu3) ... 369s Setting up pkgconf:arm64 (1.8.1-4) ... 369s Setting up cpp-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 369s Setting up libgcc-14-dev:arm64 (14.2.0-19ubuntu2) ... 369s Setting up libstdc++-14-dev:arm64 (14.2.0-19ubuntu2) ... 369s Setting up libmount-dev:arm64 (2.40.2-14ubuntu1) ... 369s Setting up libglib2.0-dev-bin (2.84.1-1) ... 369s Setting up libgio-2.0-dev:arm64 (2.84.1-1) ... 369s Setting up cpp-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 369s Setting up cpp-14 (14.2.0-19ubuntu2) ... 369s Setting up cpp (4:14.2.0-1ubuntu1) ... 369s Setting up gcc-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 369s Setting up gcc-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 369s Setting up g++-14-aarch64-linux-gnu (14.2.0-19ubuntu2) ... 369s Setting up gcc-14 (14.2.0-19ubuntu2) ... 369s Setting up g++-aarch64-linux-gnu (4:14.2.0-1ubuntu1) ... 369s Setting up g++-14 (14.2.0-19ubuntu2) ... 369s Setting up gcc (4:14.2.0-1ubuntu1) ... 369s Setting up g++ (4:14.2.0-1ubuntu1) ... 369s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 369s Setting up build-essential (12.12ubuntu1) ... 369s Processing triggers for install-info (7.1.1-1) ... 369s Processing triggers for libc-bin (2.41-6ubuntu1) ... 369s Processing triggers for man-db (2.13.0-1) ... 370s Processing triggers for libglib2.0-0t64:arm64 (2.84.1-1) ... 370s No schema files found: doing nothing. 370s Setting up libglib2.0-dev:arm64 (2.84.1-1) ... 373s autopkgtest [18:42:56]: test libglib2.0-dev: [----------------------- 373s + debian/tests/build 373s + mode=dynamic 373s + getopt -o --long static -n debian/tests/build -- 373s + getopt_temp= -- 373s + eval set -- -- 373s + set -- -- 373s + true 373s + shift 373s + break 373s + mktemp -d 373s + WORKDIR=/tmp/tmp.4ABmrbMUAN 373s + trap rm -rf "${WORKDIR}" 0 INT QUIT ABRT PIPE TERM 373s + cd /tmp/tmp.4ABmrbMUAN 373s + [ -n ] 373s + CROSS_COMPILE= 373s + cat 373s + cat 373s + cat 373s + cat 373s + cat 373s + cat 373s + cflags= 373s + pcflags= 373s + packages=glib-2.0 373s + pkg-config --cflags --libs glib-2.0 373s + gcc -o glib-dynamic glib.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lglib-2.0 373s build (glib, dynamic): OK 373s + echo build (glib, dynamic): OK 373s + [ -x glib-dynamic ] 373s + foo=bar ./glib-dynamic 373s + echo run (glib, dynamic): OK 373s run (glib, dynamic): OK 373s + cflags= 373s + pcflags= 373s + packages=gobject-2.0 373s + pkg-config --cflags --libs gobject-2.0 373s + gcc -o gobject-dynamic gobject.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgobject-2.0 -lglib-2.0 373s build (gobject, dynamic): OK 373s + echo build (gobject, dynamic): OK 373s + [ -x gobject-dynamic ] 373s + foo=bar ./gobject-dynamic 373s run (gobject, dynamic): OK 373s + echo run (gobject, dynamic): OK 373s + cflags= 373s + pcflags= 373s + packages=gio-2.0 373s + pkg-config --cflags --libs gio-2.0 373s + gcc -o gio-dynamic gio.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 373s + build (gio, dynamic): OK 373s echo build (gio, dynamic): OK 373s + [ -x gio-dynamic ] 373s + foo=bar ./gio-dynamic 373s + echo run (gio, dynamic): OKrun (gio, dynamic): OK 373s 373s + cflags= 373s + pcflags= 373s + packages=gio-unix-2.0 373s + pkg-config --cflags --libs gio-unix-2.0 373s + gcc -o gio-unix-dynamic gio-unix.c -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 374s + build (gio-unix, dynamic): OK 374s echo build (gio-unix, dynamic): OK 374s + [ -x gio-unix-dynamic ] 374s + foo=bar ./gio-unix-dynamic 374s + run (gio-unix, dynamic): OK 374s echo run (gio-unix, dynamic): OK 374s + cflags= 374s + pcflags= 374s + packages=gmodule-2.0 374s + pkg-config --cflags --libs gmodule-2.0 374s + gcc -o gmodule-dynamic gmodule.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 374s + build (gmodule, dynamic): OK 374s echo build (gmodule, dynamic): OK 374s + [ -x gmodule-dynamic ] 374s + foo=bar ./gmodule-dynamic 374s + run (gmodule, dynamic): OK 374s echo run (gmodule, dynamic): OK 374s + cflags= 374s + pcflags= 374s + packages=gthread-2.0 374s + pkg-config --cflags --libs gthread-2.0 374s + gcc -o gthread-dynamic gthread.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgthread-2.0 -pthread -lglib-2.0 374s build (gthread, dynamic): OK 374s + echo build (gthread, dynamic): OK 374s + [ -x gthread-dynamic ] 374s + foo=bar ./gthread-dynamic 374s run (gthread, dynamic): OK 374s + echo run (gthread, dynamic): OK 374s + rm -rf /tmp/tmp.4ABmrbMUAN 374s + debian/tests/build-static 374s + mode=dynamic 374s + getopt -o --long static -n debian/tests/build -- --static 374s + getopt_temp= --static -- 374s + eval set -- --static -- 374s + set -- --static -- 374s + true 374s + mode=static 374s + shift 374s + continue 374s + true 374s + shift 374s + break 374s + mktemp -d 374s + WORKDIR=/tmp/tmp.9ZvDpuLYbW 374s + trap rm -rf "${WORKDIR}" 0 INT QUIT ABRT PIPE TERM 374s + cd /tmp/tmp.9ZvDpuLYbW 374s + [ -n ] 374s + CROSS_COMPILE= 374s + cat 374s + cat 374s + cat 374s + cat 374s + cat 374s + cat 374s + cflags= 374s + pcflags= 374s + packages=glib-2.0 374s + cflags=-static 374s + pcflags=--static 374s + pkg-config --static --cflags --libs glib-2.0 374s + gcc -static -o glib-static glib.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -pthread -lpcre2-8 374s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 374s (.text+0xf8): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s /usr/bin/ld: (.text+0x2a0): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s /usr/bin/ld: (.text+0x12c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s build (glib, static): OK 374s + echo build (glib, static): OK 374s + [ -x glib-static ] 374s + foo=bar ./glib-static 374s + echo run (glib, static): OK 374s + cflags= 374s + pcflags= 374s + packages=gobject-2.0 374s + cflags=-static 374s + pcflags=--static 374s run (glib, static): OK 374s + pkg-config --static --cflags --libs gobject-2.0 374s + gcc -static -o gobject-static gobject.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -lgobject-2.0 -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -pthread -lpcre2-8 -lffi 374s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 374s (.text+0xf8): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s /usr/bin/ld: (.text+0x2a0): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s /usr/bin/ld: (.text+0x12c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s build (gobject, static): OK 374s + echo build (gobject, static): OK 374s + [ -x gobject-static ] 374s + foo=bar ./gobject-static 374s + echo run (gobject, static): OK 374s + cflags= 374s + pcflags= 374s + packages=gio-2.0 374s + cflags=-static 374s + pcflags=--static 374s + continue 374s + cflags= 374s + pcflags= 374s + packages=gio-unix-2.0 374s + cflags=-static 374s + pcflags=--static 374s + continue 374s + cflags= 374s + pcflags= 374s + packages=gmodule-2.0 374s + cflags=-static 374s + pcflags=--static 374s run (gobject, static): OK 374s + pkg-config --static --cflags --libs gmodule-2.0 374s + gcc -static -o gmodule-static gmodule.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 -pthread -lpcre2-8 -lglib-2.0 -latomic -lm -pthread -lsysprof-capture-4 -pthread -lpcre2-8 374s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libgmodule-2.0.a(gmodule.c.o): in function `g_module_open_full': 374s (.text+0x604): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 374s (.text+0xf8): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s /usr/bin/ld: (.text+0x2a0): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s /usr/bin/ld: (.text+0x12c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s build (gmodule, static): OK 374s + echo build (gmodule, static): OK 374s + [ -x gmodule-static ] 374s + foo=bar ./gmodule-static 374s + echo run (gmodule, static): OK 374s + cflags= 374s + pcflags= 374s + packages=gthread-2.0 374s + cflags=-static 374s + pcflags=--static 374s run (gmodule, static): OK 374s + pkg-config --static --cflags --libs gthread-2.0 374s + gcc -static -o gthread-static gthread.c -I/usr/include/glib-2.0 -I/usr/lib/aarch64-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 -pthread -lpcre2-8 374s /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/14/../../../aarch64-linux-gnu/libglib-2.0.a(gutils.c.o): in function `g_get_user_database_entry': 374s (.text+0xf8): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s /usr/bin/ld: (.text+0x2a0): warning: Using 'getpwuid' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 374s /usr/bin/ld: (.text+0x12c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking 375s build (gthread, static): OK 375s run (gthread, static): OK 375s + echo build (gthread, static): OK 375s + [ -x gthread-static ] 375s + foo=bar ./gthread-static 375s + echo run (gthread, static): OK 375s + rm -rf /tmp/tmp.9ZvDpuLYbW 375s + debian/tests/girepository-tools 375s + cd /tmp/autopkgtest.TvVmSg/autopkgtest_tmp 375s + dpkg-architecture -qDEB_HOST_GNU_TYPE 375s + DEB_HOST_GNU_TYPE=aarch64-linux-gnu 375s + dpkg-architecture -qDEB_HOST_MULTIARCH 375s + DEB_HOST_MULTIARCH=aarch64-linux-gnu 375s + aarch64-linux-gnu-gi-inspect-typelib --print-typelibs --typelib-version=2.0 GObject 375s typelib: GLib-2.0 375s + aarch64-linux-gnu-gi-compile-repository -o GLib.typelib /usr/lib/aarch64-linux-gnu/gir-1.0/GLib-2.0.gir 375s + aarch64-linux-gnu-gi-decompile-typelib -o GLib.gir GLib.typelib 375s + debian/tests/libgio-2.0-dev-bin 375s + gdbus-codegen --help 375s usage: gdbus-codegen [-h] [--interface-prefix PREFIX] 375s [--c-namespace NAMESPACE] [--c-generate-object-manager] 375s [--c-generate-autocleanup {none,objects,all}] 375s [--generate-docbook OUTFILES] [--generate-md OUTFILES] 375s [--generate-rst OUTFILES] [--pragma-once] 375s [--annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE] 375s [--glib-min-required VERSION] 375s [--glib-max-allowed VERSION] 375s [--symbol-decorator SYMBOL_DECORATOR] 375s [--symbol-decorator-header SYMBOL_DECORATOR_HEADER] 375s [--symbol-decorator-define SYMBOL_DECORATOR_DEFINE] 375s [--generate-c-code OUTFILES | --header | --body | 375s --interface-info-header | --interface-info-body] 375s [--output FILE | --output-directory OUTDIR] 375s FILE [FILE ...] 375s 375s D-Bus code and documentation generator 375s 375s positional arguments: 375s FILE D-Bus introspection XML file 375s 375s options: 375s -h, --help show this help message and exit 375s --interface-prefix PREFIX 375s String to strip from D-Bus interface names for code 375s and docs 375s --c-namespace NAMESPACE 375s The namespace to use for generated C code 375s --c-generate-object-manager 375s Generate a GDBusObjectManagerClient subclass when 375s generating C code 375s --c-generate-autocleanup {none,objects,all} 375s Generate autocleanup support 375s --generate-docbook OUTFILES 375s Generate Docbook in OUTFILES-org.Project.IFace.xml 375s --generate-md OUTFILES 375s Generate Markdown in OUTFILES-org.Project.IFace.md 375s --generate-rst OUTFILES 375s Generate reStructuredText in OUTFILES- 375s org.Project.IFace.rst 375s --pragma-once Use "pragma once" as the inclusion guard 375s --annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE 375s Add annotation (may be used several times) 375s --glib-min-required VERSION 375s Minimum version of GLib to be supported by the 375s outputted code (default: 2.30) 375s --glib-max-allowed VERSION 375s Maximum version of GLib to be used by the outputted 375s code (default: current GLib version) 375s --symbol-decorator SYMBOL_DECORATOR 375s Macro used to decorate a symbol in the outputted 375s header, possibly to export symbols 375s --symbol-decorator-header SYMBOL_DECORATOR_HEADER 375s Additional header required for decorator specified by 375s --symbol-decorator 375s --symbol-decorator-define SYMBOL_DECORATOR_DEFINE 375s Additional define required for decorator specified by 375s --symbol-decorator 375s --generate-c-code OUTFILES 375s Generate C code in OUTFILES.[ch] 375s --header Generate C headers 375s --body Generate C code 375s --interface-info-header 375s Generate GDBusInterfaceInfo C header 375s --interface-info-body 375s Generate GDBusInterfaceInfo C code 375s --output FILE Write output into the specified file 375s --output-directory OUTDIR 375s Location to output generated files 375s + glib-compile-resources --version 375s 2.84.1 375s + glib-genmarshal --version 375s glib-genmarshal version 2.84.1 375s glib-genmarshal comes with ABSOLUTELY NO WARRANTY. 375s You may redistribute copies of glib-genmarshal under the terms of 375s the GNU General Public License which can be found in the 375s GLib source package. Sources, examples and contact 375s information are available at http://www.gtk.org 375s /usr/bin/glib-gettextize (GNU glib) 2.84.1 375s Copyright (C) 1995-1998, 2000, 2001 Free Software Foundation, Inc. 375s This is free software; see the source for copying conditions. There is NO 375s warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 375s Written by Ulrich Drepper 375s + glib-gettextize --version 375s + glib-mkenums --version 375s glib-mkenums version 2.84.1 375s glib-mkenums comes with ABSOLUTELY NO WARRANTY. 375s You may redistribute copies of glib-mkenums under the terms of 375s the GNU General Public License which can be found in the 375s GLib source package. Sources, examples and contact 375s information are available at http://www.gtk.org 375s + gobject-query tree 375s GObject 375s + gtester --version 375s gtester version 2.84.1 375s + gtester-report --version 375s gtester-report (GLib utils) version 2.84.1. 375s + cd /tmp/autopkgtest.TvVmSg/autopkgtest_tmp 375s + dpkg-architecture -qDEB_HOST_MULTIARCH 375s + DEB_HOST_MULTIARCH=aarch64-linux-gnu 375s + gi-inspect-typelib --print-typelibs --typelib-version=2.0 GObject 375s typelib: GLib-2.0 375s + gi-compile-repository -o GLib.typelib /usr/lib/aarch64-linux-gnu/gir-1.0/GLib-2.0.gir 375s + gi-decompile-typelib -o GLib.gir GLib.typelib 375s autopkgtest [18:42:58]: test libglib2.0-dev: -----------------------] 376s libglib2.0-dev PASS (superficial) 376s autopkgtest [18:42:59]: test libglib2.0-dev: - - - - - - - - - - results - - - - - - - - - - 376s autopkgtest [18:42:59]: test installed-tests: preparing testbed 464s autopkgtest [18:44:27]: testbed dpkg architecture: arm64 464s autopkgtest [18:44:27]: testbed apt version: 3.0.0 464s autopkgtest [18:44:27]: @@@@@@@@@@@@@@@@@@@@ test bed setup 464s autopkgtest [18:44:27]: testbed release detected to be: plucky 465s autopkgtest [18:44:28]: updating testbed package index (apt update) 465s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 465s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 465s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 465s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 465s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5196 B] 465s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [5840 B] 465s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 c-n-f Metadata [252 B] 466s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 c-n-f Metadata [224 B] 466s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [16.6 kB] 466s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 c-n-f Metadata [8288 B] 466s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 c-n-f Metadata [324 B] 467s Fetched 302 kB in 0s (699 kB/s) 467s Reading package lists... 468s autopkgtest [18:44:31]: upgrading testbed (apt dist-upgrade and autopurge) 468s Reading package lists... 468s Building dependency tree... 468s Reading state information... 469s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 469s Starting 2 pkgProblemResolver with broken count: 0 469s Done 469s Entering ResolveByKeep 470s 470s Calculating upgrade... 470s The following packages will be upgraded: 470s tzdata 470s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 470s Need to get 198 kB of archives. 470s After this operation, 0 B of additional disk space will be used. 470s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 tzdata all 2025b-1ubuntu1.1 [198 kB] 470s Preconfiguring packages ... 470s Fetched 198 kB in 0s (15.0 MB/s) 471s (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 ... 85224 files and directories currently installed.) 471s Preparing to unpack .../tzdata_2025b-1ubuntu1.1_all.deb ... 471s Unpacking tzdata (2025b-1ubuntu1.1) over (2025b-1ubuntu1) ... 471s Setting up tzdata (2025b-1ubuntu1.1) ... 471s 471s Current default time zone: 'Etc/UTC' 471s Local time is now: Tue May 6 18:44:33 UTC 2025. 471s Universal Time is now: Tue May 6 18:44:33 UTC 2025. 471s Run 'dpkg-reconfigure tzdata' if you wish to change it. 471s 471s Reading package lists... 471s Building dependency tree... 471s Reading state information... 472s Starting pkgProblemResolver with broken count: 0 472s Starting 2 pkgProblemResolver with broken count: 0 472s Done 472s Solving dependencies... 472s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 475s Reading package lists... 476s Building dependency tree... 476s Reading state information... 476s Starting pkgProblemResolver with broken count: 0 476s Starting 2 pkgProblemResolver with broken count: 0 476s Done 477s The following NEW packages will be installed: 477s dbus-x11 desktop-file-utils gir1.2-glib-2.0-dev girepository-tools 477s gnome-desktop-testing libfontenc1 libgbm1 libgio-2.0-dev-bin 477s libgirepository-2.0-0 libgl1 libgl1-mesa-dri libglib2.0-bin 477s libglib2.0-dev-bin libglib2.0-tests libglvnd0 libglx-mesa0 libglx0 libice6 477s libpixman-1-0 libsm6 libunwind8 libvulkan1 libwayland-server0 libx11-xcb1 477s libxaw7 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-randr0 libxcb-shm0 477s libxcb-sync1 libxcb-xfixes0 libxfont2 libxkbfile1 libxmu6 libxpm4 libxrandr2 477s libxrender1 libxshmfence1 libxt6t64 libxxf86vm1 mesa-libgallium 477s native-architecture python3-dbusmock tzdata-legacy x11-common x11-xkb-utils 477s xserver-common xvfb 477s 0 upgraded, 49 newly installed, 0 to remove and 0 not upgraded. 477s Need to get 15.9 MB of archives. 477s After this operation, 94.8 MB of additional disk space will be used. 477s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 dbus-x11 arm64 1.16.2-2ubuntu1 [23.1 kB] 477s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 desktop-file-utils arm64 0.28-1 [53.6 kB] 477s Get:3 http://ftpmaster.internal/ubuntu plucky/main arm64 gir1.2-glib-2.0-dev arm64 2.84.1-1 [862 kB] 477s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 native-architecture all 0.2.6 [2140 B] 477s Get:5 http://ftpmaster.internal/ubuntu plucky/main arm64 libgirepository-2.0-0 arm64 2.84.1-1 [73.2 kB] 477s Get:6 http://ftpmaster.internal/ubuntu plucky/main arm64 girepository-tools arm64 2.84.1-1 [106 kB] 477s Get:7 http://ftpmaster.internal/ubuntu plucky/universe arm64 gnome-desktop-testing arm64 2021.1-4 [16.2 kB] 477s Get:8 http://ftpmaster.internal/ubuntu plucky/main arm64 libfontenc1 arm64 1:1.1.8-1build1 [13.9 kB] 477s Get:9 http://ftpmaster.internal/ubuntu plucky/main arm64 libwayland-server0 arm64 1.23.1-3 [36.1 kB] 477s Get:10 http://ftpmaster.internal/ubuntu plucky/main arm64 libx11-xcb1 arm64 2:1.8.10-2 [8020 B] 477s Get:11 http://ftpmaster.internal/ubuntu plucky/main arm64 libxcb-dri3-0 arm64 1.17.0-2 [7606 B] 477s Get:12 http://ftpmaster.internal/ubuntu plucky/main arm64 libxcb-present0 arm64 1.17.0-2 [6224 B] 477s Get:13 http://ftpmaster.internal/ubuntu plucky/main arm64 libxcb-randr0 arm64 1.17.0-2 [18.5 kB] 477s Get:14 http://ftpmaster.internal/ubuntu plucky/main arm64 libxcb-sync1 arm64 1.17.0-2 [9688 B] 477s Get:15 http://ftpmaster.internal/ubuntu plucky/main arm64 libxcb-xfixes0 arm64 1.17.0-2 [10.6 kB] 477s Get:16 http://ftpmaster.internal/ubuntu plucky/main arm64 libxshmfence1 arm64 1.3-1build5 [4938 B] 477s Get:17 http://ftpmaster.internal/ubuntu plucky/main arm64 mesa-libgallium arm64 25.0.3-1ubuntu2 [9455 kB] 477s Get:18 http://ftpmaster.internal/ubuntu plucky/main arm64 libgbm1 arm64 25.0.3-1ubuntu2 [33.7 kB] 477s Get:19 http://ftpmaster.internal/ubuntu plucky/main arm64 libgio-2.0-dev-bin arm64 2.84.1-1 [129 kB] 477s Get:20 http://ftpmaster.internal/ubuntu plucky/main arm64 libvulkan1 arm64 1.4.304.0-1 [158 kB] 477s Get:21 http://ftpmaster.internal/ubuntu plucky/main arm64 libgl1-mesa-dri arm64 25.0.3-1ubuntu2 [35.4 kB] 477s Get:22 http://ftpmaster.internal/ubuntu plucky/main arm64 libglib2.0-bin arm64 2.84.1-1 [98.1 kB] 477s Get:23 http://ftpmaster.internal/ubuntu plucky/main arm64 libglib2.0-dev-bin arm64 2.84.1-1 [18.1 kB] 477s Get:24 http://ftpmaster.internal/ubuntu plucky/universe arm64 python3-dbusmock all 0.34.3-1 [92.4 kB] 477s Get:25 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 tzdata-legacy all 2025b-1ubuntu1.1 [99.2 kB] 477s Get:26 http://ftpmaster.internal/ubuntu plucky/universe arm64 libglib2.0-tests arm64 2.84.1-1 [2124 kB] 477s Get:27 http://ftpmaster.internal/ubuntu plucky/main arm64 libxcb-glx0 arm64 1.17.0-2 [25.5 kB] 477s Get:28 http://ftpmaster.internal/ubuntu plucky/main arm64 libxcb-shm0 arm64 1.17.0-2 [5884 B] 477s Get:29 http://ftpmaster.internal/ubuntu plucky/main arm64 libxxf86vm1 arm64 1:1.1.4-1build4 [9130 B] 477s Get:30 http://ftpmaster.internal/ubuntu plucky/main arm64 libglx-mesa0 arm64 25.0.3-1ubuntu2 [151 kB] 477s Get:31 http://ftpmaster.internal/ubuntu plucky/main arm64 x11-common all 1:7.7+23ubuntu4 [21.8 kB] 477s Get:32 http://ftpmaster.internal/ubuntu plucky/main arm64 libice6 arm64 2:1.1.1-1 [42.3 kB] 477s Get:33 http://ftpmaster.internal/ubuntu plucky/main arm64 libpixman-1-0 arm64 0.44.0-3 [197 kB] 477s Get:34 http://ftpmaster.internal/ubuntu plucky/main arm64 libsm6 arm64 2:1.2.4-1 [16.4 kB] 477s Get:35 http://ftpmaster.internal/ubuntu plucky/main arm64 libunwind8 arm64 1.6.2-3.1 [53.5 kB] 477s Get:36 http://ftpmaster.internal/ubuntu plucky/main arm64 libxt6t64 arm64 1:1.2.1-1.2build1 [168 kB] 477s Get:37 http://ftpmaster.internal/ubuntu plucky/main arm64 libxmu6 arm64 2:1.1.3-3build2 [47.5 kB] 477s Get:38 http://ftpmaster.internal/ubuntu plucky/main arm64 libxpm4 arm64 1:3.5.17-1build2 [35.1 kB] 477s Get:39 http://ftpmaster.internal/ubuntu plucky/main arm64 libxaw7 arm64 2:1.0.16-1 [184 kB] 477s Get:40 http://ftpmaster.internal/ubuntu plucky/main arm64 libxfont2 arm64 1:2.0.6-1build1 [88.7 kB] 477s Get:41 http://ftpmaster.internal/ubuntu plucky/main arm64 libxkbfile1 arm64 1:1.1.0-1build4 [69.4 kB] 477s Get:42 http://ftpmaster.internal/ubuntu plucky/main arm64 libxrender1 arm64 1:0.9.10-1.1build1 [18.8 kB] 477s Get:43 http://ftpmaster.internal/ubuntu plucky/main arm64 libxrandr2 arm64 2:1.5.4-1 [19.6 kB] 477s Get:44 http://ftpmaster.internal/ubuntu plucky/main arm64 x11-xkb-utils arm64 7.7+9 [165 kB] 477s Get:45 http://ftpmaster.internal/ubuntu plucky/main arm64 xserver-common all 2:21.1.16-1ubuntu1 [34.4 kB] 477s Get:46 http://ftpmaster.internal/ubuntu plucky/main arm64 libglvnd0 arm64 1.7.0-1build1 [60.6 kB] 477s Get:47 http://ftpmaster.internal/ubuntu plucky/main arm64 libglx0 arm64 1.7.0-1build1 [33.2 kB] 477s Get:48 http://ftpmaster.internal/ubuntu plucky/main arm64 libgl1 arm64 1.7.0-1build1 [106 kB] 477s Get:49 http://ftpmaster.internal/ubuntu plucky/universe arm64 xvfb arm64 2:21.1.16-1ubuntu1 [870 kB] 477s Fetched 15.9 MB in 1s (26.6 MB/s) 478s Selecting previously unselected package dbus-x11. 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 ... 85224 files and directories currently installed.) 478s Preparing to unpack .../00-dbus-x11_1.16.2-2ubuntu1_arm64.deb ... 478s Unpacking dbus-x11 (1.16.2-2ubuntu1) ... 478s Selecting previously unselected package desktop-file-utils. 478s Preparing to unpack .../01-desktop-file-utils_0.28-1_arm64.deb ... 478s Unpacking desktop-file-utils (0.28-1) ... 478s Selecting previously unselected package gir1.2-glib-2.0-dev:arm64. 478s Preparing to unpack .../02-gir1.2-glib-2.0-dev_2.84.1-1_arm64.deb ... 478s Unpacking gir1.2-glib-2.0-dev:arm64 (2.84.1-1) ... 478s Selecting previously unselected package native-architecture. 478s Preparing to unpack .../03-native-architecture_0.2.6_all.deb ... 478s Unpacking native-architecture (0.2.6) ... 478s Selecting previously unselected package libgirepository-2.0-0:arm64. 478s Preparing to unpack .../04-libgirepository-2.0-0_2.84.1-1_arm64.deb ... 478s Unpacking libgirepository-2.0-0:arm64 (2.84.1-1) ... 478s Selecting previously unselected package girepository-tools:arm64. 478s Preparing to unpack .../05-girepository-tools_2.84.1-1_arm64.deb ... 478s Unpacking girepository-tools:arm64 (2.84.1-1) ... 478s Selecting previously unselected package gnome-desktop-testing. 478s Preparing to unpack .../06-gnome-desktop-testing_2021.1-4_arm64.deb ... 478s Unpacking gnome-desktop-testing (2021.1-4) ... 478s Selecting previously unselected package libfontenc1:arm64. 478s Preparing to unpack .../07-libfontenc1_1%3a1.1.8-1build1_arm64.deb ... 478s Unpacking libfontenc1:arm64 (1:1.1.8-1build1) ... 478s Selecting previously unselected package libwayland-server0:arm64. 478s Preparing to unpack .../08-libwayland-server0_1.23.1-3_arm64.deb ... 478s Unpacking libwayland-server0:arm64 (1.23.1-3) ... 478s Selecting previously unselected package libx11-xcb1:arm64. 478s Preparing to unpack .../09-libx11-xcb1_2%3a1.8.10-2_arm64.deb ... 478s Unpacking libx11-xcb1:arm64 (2:1.8.10-2) ... 478s Selecting previously unselected package libxcb-dri3-0:arm64. 478s Preparing to unpack .../10-libxcb-dri3-0_1.17.0-2_arm64.deb ... 478s Unpacking libxcb-dri3-0:arm64 (1.17.0-2) ... 478s Selecting previously unselected package libxcb-present0:arm64. 478s Preparing to unpack .../11-libxcb-present0_1.17.0-2_arm64.deb ... 478s Unpacking libxcb-present0:arm64 (1.17.0-2) ... 478s Selecting previously unselected package libxcb-randr0:arm64. 478s Preparing to unpack .../12-libxcb-randr0_1.17.0-2_arm64.deb ... 478s Unpacking libxcb-randr0:arm64 (1.17.0-2) ... 478s Selecting previously unselected package libxcb-sync1:arm64. 478s Preparing to unpack .../13-libxcb-sync1_1.17.0-2_arm64.deb ... 478s Unpacking libxcb-sync1:arm64 (1.17.0-2) ... 478s Selecting previously unselected package libxcb-xfixes0:arm64. 478s Preparing to unpack .../14-libxcb-xfixes0_1.17.0-2_arm64.deb ... 478s Unpacking libxcb-xfixes0:arm64 (1.17.0-2) ... 478s Selecting previously unselected package libxshmfence1:arm64. 478s Preparing to unpack .../15-libxshmfence1_1.3-1build5_arm64.deb ... 478s Unpacking libxshmfence1:arm64 (1.3-1build5) ... 478s Selecting previously unselected package mesa-libgallium:arm64. 478s Preparing to unpack .../16-mesa-libgallium_25.0.3-1ubuntu2_arm64.deb ... 478s Unpacking mesa-libgallium:arm64 (25.0.3-1ubuntu2) ... 478s Selecting previously unselected package libgbm1:arm64. 478s Preparing to unpack .../17-libgbm1_25.0.3-1ubuntu2_arm64.deb ... 478s Unpacking libgbm1:arm64 (25.0.3-1ubuntu2) ... 478s Selecting previously unselected package libgio-2.0-dev-bin. 478s Preparing to unpack .../18-libgio-2.0-dev-bin_2.84.1-1_arm64.deb ... 478s Unpacking libgio-2.0-dev-bin (2.84.1-1) ... 478s Selecting previously unselected package libvulkan1:arm64. 478s Preparing to unpack .../19-libvulkan1_1.4.304.0-1_arm64.deb ... 478s Unpacking libvulkan1:arm64 (1.4.304.0-1) ... 478s Selecting previously unselected package libgl1-mesa-dri:arm64. 478s Preparing to unpack .../20-libgl1-mesa-dri_25.0.3-1ubuntu2_arm64.deb ... 478s Unpacking libgl1-mesa-dri:arm64 (25.0.3-1ubuntu2) ... 478s Selecting previously unselected package libglib2.0-bin. 478s Preparing to unpack .../21-libglib2.0-bin_2.84.1-1_arm64.deb ... 478s Unpacking libglib2.0-bin (2.84.1-1) ... 478s Selecting previously unselected package libglib2.0-dev-bin. 478s Preparing to unpack .../22-libglib2.0-dev-bin_2.84.1-1_arm64.deb ... 478s Unpacking libglib2.0-dev-bin (2.84.1-1) ... 478s Selecting previously unselected package python3-dbusmock. 478s Preparing to unpack .../23-python3-dbusmock_0.34.3-1_all.deb ... 478s Unpacking python3-dbusmock (0.34.3-1) ... 478s Selecting previously unselected package tzdata-legacy. 478s Preparing to unpack .../24-tzdata-legacy_2025b-1ubuntu1.1_all.deb ... 478s Unpacking tzdata-legacy (2025b-1ubuntu1.1) ... 479s Selecting previously unselected package libglib2.0-tests. 479s Preparing to unpack .../25-libglib2.0-tests_2.84.1-1_arm64.deb ... 479s Unpacking libglib2.0-tests (2.84.1-1) ... 479s Selecting previously unselected package libxcb-glx0:arm64. 479s Preparing to unpack .../26-libxcb-glx0_1.17.0-2_arm64.deb ... 479s Unpacking libxcb-glx0:arm64 (1.17.0-2) ... 479s Selecting previously unselected package libxcb-shm0:arm64. 479s Preparing to unpack .../27-libxcb-shm0_1.17.0-2_arm64.deb ... 479s Unpacking libxcb-shm0:arm64 (1.17.0-2) ... 479s Selecting previously unselected package libxxf86vm1:arm64. 479s Preparing to unpack .../28-libxxf86vm1_1%3a1.1.4-1build4_arm64.deb ... 479s Unpacking libxxf86vm1:arm64 (1:1.1.4-1build4) ... 479s Selecting previously unselected package libglx-mesa0:arm64. 479s Preparing to unpack .../29-libglx-mesa0_25.0.3-1ubuntu2_arm64.deb ... 479s Unpacking libglx-mesa0:arm64 (25.0.3-1ubuntu2) ... 479s Selecting previously unselected package x11-common. 479s Preparing to unpack .../30-x11-common_1%3a7.7+23ubuntu4_all.deb ... 479s Unpacking x11-common (1:7.7+23ubuntu4) ... 479s Selecting previously unselected package libice6:arm64. 479s Preparing to unpack .../31-libice6_2%3a1.1.1-1_arm64.deb ... 479s Unpacking libice6:arm64 (2:1.1.1-1) ... 479s Selecting previously unselected package libpixman-1-0:arm64. 479s Preparing to unpack .../32-libpixman-1-0_0.44.0-3_arm64.deb ... 479s Unpacking libpixman-1-0:arm64 (0.44.0-3) ... 479s Selecting previously unselected package libsm6:arm64. 479s Preparing to unpack .../33-libsm6_2%3a1.2.4-1_arm64.deb ... 479s Unpacking libsm6:arm64 (2:1.2.4-1) ... 479s Selecting previously unselected package libunwind8:arm64. 479s Preparing to unpack .../34-libunwind8_1.6.2-3.1_arm64.deb ... 479s Unpacking libunwind8:arm64 (1.6.2-3.1) ... 479s Selecting previously unselected package libxt6t64:arm64. 479s Preparing to unpack .../35-libxt6t64_1%3a1.2.1-1.2build1_arm64.deb ... 479s Unpacking libxt6t64:arm64 (1:1.2.1-1.2build1) ... 479s Selecting previously unselected package libxmu6:arm64. 479s Preparing to unpack .../36-libxmu6_2%3a1.1.3-3build2_arm64.deb ... 479s Unpacking libxmu6:arm64 (2:1.1.3-3build2) ... 479s Selecting previously unselected package libxpm4:arm64. 479s Preparing to unpack .../37-libxpm4_1%3a3.5.17-1build2_arm64.deb ... 479s Unpacking libxpm4:arm64 (1:3.5.17-1build2) ... 479s Selecting previously unselected package libxaw7:arm64. 479s Preparing to unpack .../38-libxaw7_2%3a1.0.16-1_arm64.deb ... 479s Unpacking libxaw7:arm64 (2:1.0.16-1) ... 479s Selecting previously unselected package libxfont2:arm64. 479s Preparing to unpack .../39-libxfont2_1%3a2.0.6-1build1_arm64.deb ... 479s Unpacking libxfont2:arm64 (1:2.0.6-1build1) ... 479s Selecting previously unselected package libxkbfile1:arm64. 479s Preparing to unpack .../40-libxkbfile1_1%3a1.1.0-1build4_arm64.deb ... 479s Unpacking libxkbfile1:arm64 (1:1.1.0-1build4) ... 479s Selecting previously unselected package libxrender1:arm64. 479s Preparing to unpack .../41-libxrender1_1%3a0.9.10-1.1build1_arm64.deb ... 479s Unpacking libxrender1:arm64 (1:0.9.10-1.1build1) ... 479s Selecting previously unselected package libxrandr2:arm64. 479s Preparing to unpack .../42-libxrandr2_2%3a1.5.4-1_arm64.deb ... 479s Unpacking libxrandr2:arm64 (2:1.5.4-1) ... 479s Selecting previously unselected package x11-xkb-utils. 479s Preparing to unpack .../43-x11-xkb-utils_7.7+9_arm64.deb ... 479s Unpacking x11-xkb-utils (7.7+9) ... 479s Selecting previously unselected package xserver-common. 479s Preparing to unpack .../44-xserver-common_2%3a21.1.16-1ubuntu1_all.deb ... 479s Unpacking xserver-common (2:21.1.16-1ubuntu1) ... 479s Selecting previously unselected package libglvnd0:arm64. 479s Preparing to unpack .../45-libglvnd0_1.7.0-1build1_arm64.deb ... 479s Unpacking libglvnd0:arm64 (1.7.0-1build1) ... 479s Selecting previously unselected package libglx0:arm64. 479s Preparing to unpack .../46-libglx0_1.7.0-1build1_arm64.deb ... 479s Unpacking libglx0:arm64 (1.7.0-1build1) ... 479s Selecting previously unselected package libgl1:arm64. 479s Preparing to unpack .../47-libgl1_1.7.0-1build1_arm64.deb ... 479s Unpacking libgl1:arm64 (1.7.0-1build1) ... 479s Selecting previously unselected package xvfb. 479s Preparing to unpack .../48-xvfb_2%3a21.1.16-1ubuntu1_arm64.deb ... 479s Unpacking xvfb (2:21.1.16-1ubuntu1) ... 479s Setting up gnome-desktop-testing (2021.1-4) ... 479s Setting up libxcb-dri3-0:arm64 (1.17.0-2) ... 479s Setting up libpixman-1-0:arm64 (0.44.0-3) ... 479s Setting up libwayland-server0:arm64 (1.23.1-3) ... 479s Setting up libx11-xcb1:arm64 (2:1.8.10-2) ... 479s Setting up libgio-2.0-dev-bin (2.84.1-1) ... 480s Setting up native-architecture (0.2.6) ... 480s Setting up libxcb-xfixes0:arm64 (1.17.0-2) ... 480s Setting up desktop-file-utils (0.28-1) ... 480s Setting up libxpm4:arm64 (1:3.5.17-1build2) ... 480s Setting up libxrender1:arm64 (1:0.9.10-1.1build1) ... 480s Setting up libgirepository-2.0-0:arm64 (2.84.1-1) ... 480s Setting up libglvnd0:arm64 (1.7.0-1build1) ... 480s Setting up libxcb-glx0:arm64 (1.17.0-2) ... 480s Setting up x11-common (1:7.7+23ubuntu4) ... 480s Setting up libglib2.0-bin (2.84.1-1) ... 480s Setting up libxcb-shm0:arm64 (1.17.0-2) ... 480s Setting up python3-dbusmock (0.34.3-1) ... 480s Setting up libunwind8:arm64 (1.6.2-3.1) ... 480s Setting up tzdata-legacy (2025b-1ubuntu1.1) ... 480s Setting up libxxf86vm1:arm64 (1:1.1.4-1build4) ... 480s Setting up libxcb-present0:arm64 (1.17.0-2) ... 480s Setting up libfontenc1:arm64 (1:1.1.8-1build1) ... 480s Setting up libxcb-sync1:arm64 (1.17.0-2) ... 480s Setting up libxrandr2:arm64 (2:1.5.4-1) ... 480s Setting up libvulkan1:arm64 (1.4.304.0-1) ... 480s Setting up gir1.2-glib-2.0-dev:arm64 (2.84.1-1) ... 480s Setting up libxshmfence1:arm64 (1.3-1build5) ... 480s Setting up dbus-x11 (1.16.2-2ubuntu1) ... 480s Setting up libxcb-randr0:arm64 (1.17.0-2) ... 480s Setting up libxkbfile1:arm64 (1:1.1.0-1build4) ... 480s Setting up libxfont2:arm64 (1:2.0.6-1build1) ... 480s Setting up libice6:arm64 (2:1.1.1-1) ... 480s Setting up mesa-libgallium:arm64 (25.0.3-1ubuntu2) ... 480s Setting up girepository-tools:arm64 (2.84.1-1) ... 480s Setting up libgbm1:arm64 (25.0.3-1ubuntu2) ... 480s Setting up libgl1-mesa-dri:arm64 (25.0.3-1ubuntu2) ... 480s Setting up libsm6:arm64 (2:1.2.4-1) ... 480s Setting up libglib2.0-dev-bin (2.84.1-1) ... 480s Setting up libglx-mesa0:arm64 (25.0.3-1ubuntu2) ... 480s Setting up libglx0:arm64 (1.7.0-1build1) ... 480s Setting up libgl1:arm64 (1.7.0-1build1) ... 480s Setting up libxt6t64:arm64 (1:1.2.1-1.2build1) ... 480s Setting up libglib2.0-tests (2.84.1-1) ... 480s Setting up libxmu6:arm64 (2:1.1.3-3build2) ... 480s Setting up libxaw7:arm64 (2:1.0.16-1) ... 480s Setting up x11-xkb-utils (7.7+9) ... 480s Setting up xserver-common (2:21.1.16-1ubuntu1) ... 480s Setting up xvfb (2:21.1.16-1ubuntu1) ... 480s Processing triggers for man-db (2.13.0-1) ... 481s Processing triggers for libc-bin (2.41-6ubuntu1) ... 485s autopkgtest [18:44:48]: test installed-tests: [----------------------- 486s Running as: uid=1000(ubuntu) gid=1000(ubuntu) groups=1000(ubuntu),4(adm),24(cdrom),27(sudo),30(dip),102(lxd) 486s passwd entry: run-with-locales: de_DE=ISO-8859-1... 486s Character set: ISO-8859-1 486s Source file: de_DE 486s Output: /tmp/tmp.mVgrF4JYSL/de_DE 486s run-with-locales: de_DE.utf8... 486s Character set: UTF-8 486s Source file: de_DE 486s Output: /tmp/tmp.mVgrF4JYSL/de_DE.utf8 486s ubuntu:x:1000:1000:Ubuntu:/home/ubuntu:/bin/bash 486s group entry: ubuntu:x:1000: 486s Environment: 486s ADTTMP=/tmp/autopkgtest.TvVmSg/autopkgtest_tmp 486s ADT_ARTIFACTS=/tmp/autopkgtest.TvVmSg/installed-tests-artifacts 486s ADT_TEST_TRIGGERS=tzdata/2025b-1ubuntu1.1 486s AUTOPKGTEST_ARTIFACTS=/tmp/autopkgtest.TvVmSg/installed-tests-artifacts 486s AUTOPKGTEST_TESTBED_ARCH=arm64 486s AUTOPKGTEST_TEST_ARCH=arm64 486s AUTOPKGTEST_TMP=/tmp/autopkgtest.TvVmSg/autopkgtest_tmp 486s DEBIAN_FRONTEND=noninteractive 486s DEBUGINFOD_URLS=https://debuginfod.ubuntu.com 486s DEB_BUILD_OPTIONS=parallel=2 486s GIO_USE_VFS=local 486s GIO_USE_VOLUME_MONITOR=unix 486s HOME=/home/ubuntu 486s LANG=C.UTF-8 486s LOGNAME=ubuntu 486s MAIL=/var/mail/ubuntu 486s OLDPWD=/home/ubuntu 486s PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin 486s PWD=/tmp/autopkgtest.TvVmSg/build.XBl/src 486s SHELL=/bin/bash 486s SHLVL=1 486s SUDO_COMMAND=/var/tmp/autopkgtest-run-wrapper su -s /bin/bash ubuntu -c set -e; exec /tmp/autopkgtest.TvVmSg/wrapper.sh --artifacts=/tmp/autopkgtest.TvVmSg/installed-tests-artifacts --chdir=/tmp/autopkgtest.TvVmSg/build.XBl/src --env=AUTOPKGTEST_TESTBED_ARCH=arm64 --env=AUTOPKGTEST_TEST_ARCH=arm64 --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.TvVmSg/installed-tests-stderr --stdout=/tmp/autopkgtest.TvVmSg/installed-tests-stdout --tmp=/tmp/autopkgtest.TvVmSg/autopkgtest_tmp --env=ADT_TEST_TRIGGERS=tzdata/2025b-1ubuntu1.1 --make-executable=/tmp/autopkgtest.TvVmSg/build.XBl/src/debian/tests/installed-tests -- /tmp/autopkgtest.TvVmSg/build.XBl/src/debian/tests/installed-tests 486s SUDO_GID=1000 486s SUDO_HOME=/home/ubuntu 486s SUDO_UID=1000 486s SUDO_USER=ubuntu 486s TERM=linux 486s USER=ubuntu 486s XDG_RUNTIME_DIR=/tmp/autopkgtest.TvVmSg/autopkgtest_tmp 486s http_proxy=http://egress.ps7.internal:3128/ 486s https_proxy=http://egress.ps7.internal:3128/ 487s run-with-locales: de_DE@euro.utf8... 487s Character set: UTF-8 487s Source file: de_DE@euro 487s Output: /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8 489s run-with-locales: el_GR.utf8... 489s Character set: UTF-8 489s Source file: el_GR 489s Output: /tmp/tmp.mVgrF4JYSL/el_GR.utf8 491s run-with-locales: en_GB=ISO-8859-1... 491s Character set: ISO-8859-1 491s Source file: en_GB 491s Output: /tmp/tmp.mVgrF4JYSL/en_GB 492s run-with-locales: en_GB.utf8... 492s Character set: UTF-8 492s Source file: en_GB 492s Output: /tmp/tmp.mVgrF4JYSL/en_GB.utf8 493s run-with-locales: en_US=ISO-8859-1... 493s Character set: ISO-8859-1 493s Source file: en_US 493s Output: /tmp/tmp.mVgrF4JYSL/en_US 494s run-with-locales: en_US.utf8... 494s Character set: UTF-8 494s Source file: en_US 494s Output: /tmp/tmp.mVgrF4JYSL/en_US.utf8 496s run-with-locales: es_ES.utf8... 496s Character set: UTF-8 496s Source file: es_ES 496s Output: /tmp/tmp.mVgrF4JYSL/es_ES.utf8 497s run-with-locales: fa_IR=UTF-8... 497s Character set: UTF-8 497s Source file: fa_IR 497s Output: /tmp/tmp.mVgrF4JYSL/fa_IR 499s run-with-locales: fa_IR.utf8... 499s Character set: UTF-8 499s Source file: fa_IR 499s Output: /tmp/tmp.mVgrF4JYSL/fa_IR.utf8 501s run-with-locales: fr_FR.utf8... 501s Character set: UTF-8 501s Source file: fr_FR 501s Output: /tmp/tmp.mVgrF4JYSL/fr_FR.utf8 503s run-with-locales: hr_HR.utf8... 503s Character set: UTF-8 503s Source file: hr_HR 503s Output: /tmp/tmp.mVgrF4JYSL/hr_HR.utf8 504s run-with-locales: ja_JP.utf8... 504s Character set: UTF-8 504s Source file: ja_JP 504s Output: /tmp/tmp.mVgrF4JYSL/ja_JP.utf8 505s run-with-locales: ja_JP.EUC-JP... 505s Character set: EUC-JP 505s Source file: ja_JP 505s Output: /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp 506s run-with-locales: lt_LT.utf8... 506s Character set: UTF-8 506s Source file: lt_LT 506s Output: /tmp/tmp.mVgrF4JYSL/lt_LT.utf8 507s run-with-locales: pl_PL=ISO-8859-2... 507s Character set: ISO-8859-2 507s Source file: pl_PL 507s Output: /tmp/tmp.mVgrF4JYSL/pl_PL 508s run-with-locales: pl_PL.ISO-8859-2... 508s Character set: ISO-8859-2 508s Source file: pl_PL 508s Output: /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592 508s run-with-locales: pl_PL.utf8... 508s Character set: UTF-8 508s Source file: pl_PL 508s Output: /tmp/tmp.mVgrF4JYSL/pl_PL.utf8 510s run-with-locales: ru_RU=ISO-8859-5... 510s Character set: ISO-8859-5 510s Source file: ru_RU 510s Output: /tmp/tmp.mVgrF4JYSL/ru_RU 510s run-with-locales: ru_RU.utf8... 510s Character set: UTF-8 510s Source file: ru_RU 510s Output: /tmp/tmp.mVgrF4JYSL/ru_RU.utf8 512s run-with-locales: sr_RS=UTF-8... 512s Character set: UTF-8 512s Source file: sr_RS 512s Output: /tmp/tmp.mVgrF4JYSL/sr_RS 514s run-with-locales: sr_RS@latin=UTF-8... 514s Character set: UTF-8 514s Source file: sr_RS@latin 514s Output: /tmp/tmp.mVgrF4JYSL/sr_RS@latin 515s run-with-locales: sv_SE=ISO-8859-1... 515s Character set: ISO-8859-1 515s Source file: sv_SE 515s Output: /tmp/tmp.mVgrF4JYSL/sv_SE 516s run-with-locales: sv_SE.utf8... 516s Character set: UTF-8 516s Source file: sv_SE 516s Output: /tmp/tmp.mVgrF4JYSL/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.mVgrF4JYSL/tr_TR 518s run-with-locales: tr_TR.utf8... 518s Character set: UTF-8 518s Source file: tr_TR 518s Output: /tmp/tmp.mVgrF4JYSL/tr_TR.utf8 520s run-with-locales: tt_RU=UTF-8... 520s Character set: UTF-8 520s Source file: tt_RU 520s Output: /tmp/tmp.mVgrF4JYSL/tt_RU 521s run-with-locales: tt_RU.utf8... 521s Character set: UTF-8 521s Source file: tt_RU 521s Output: /tmp/tmp.mVgrF4JYSL/tt_RU.utf8 523s run-with-locales: tt_RU@iqtelif=UTF-8... 523s Character set: UTF-8 523s Source file: tt_RU@iqtelif 523s Output: /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif 525s /tmp/tmp.mVgrF4JYSL 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/tt_RU.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/en_GB.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/fr_FR.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/lt_LT.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/sr_RS@latin/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/ru_RU 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/ru_RU/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/tt_RU 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/tt_RU/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/es_ES.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/tr_TR 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/tr_TR/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/pl_PL 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/pl_PL/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/en_US.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/tt_RU@iqtelif/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/fa_IR.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/pl_PL.iso88592/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/en_GB 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/en_GB/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/hr_HR.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/el_GR.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/ja_JP.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/ru_RU.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/tr_TR.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/de_DE@euro.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/en_US 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/en_US/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/de_DE.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/sv_SE.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/pl_PL.utf8/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/sr_RS 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/sr_RS/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/sv_SE 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/sv_SE/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/de_DE 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/de_DE/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/fa_IR 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/fa_IR/LC_MEASUREMENT 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_COLLATE 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_CTYPE 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_MESSAGES/SYS_LC_MESSAGES 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_NAME 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_NUMERIC 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_TIME 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_TELEPHONE 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_ADDRESS 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_PAPER 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_IDENTIFICATION 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_MONETARY 525s /tmp/tmp.mVgrF4JYSL/ja_JP.eucjp/LC_MEASUREMENT 525s TAP version 14 525s # random seed: R02S23395986b7eda09d0481a8e94dfc1428 525s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 525s 1..3 525s # Start of volumemonitor tests 525s ok 1 /volumemonitor/connected_drives 525s ok 2 /volumemonitor/volumes 525s ok 3 /volumemonitor/mounts 525s # End of volumemonitor tests 525s TAP version 14 525s # random seed: R02S8a1ce7c0f5e535df07a587bf441deefa 525s 1..1 525s # Start of gobject tests 525s # Start of refcount tests 525s 1..323 525s # Running test: glib/volumemonitor.test 525s ok - glib/volumemonitor.test 525s # Running test: glib/properties-refcount3.test 530s # Executing: glib/properties-refcount3.test 535s # Executing: glib/properties-refcount3.test 540s # Executing: glib/properties-refcount3.test 545s # Executing: glib/properties-refcount3.test 550s # Executing: glib/properties-refcount3.test 555s # 555s # stopping 555s # 555s # stopped 555s # 555s # 27222689 885022 555s # 555s ok 1 /gobject/refcount/properties-3 555s # slow test /gobject/refcount/properties-3 executed in 30.00 secs 555s # End of refcount tests 555s # End of gobject tests 555s ok - glib/properties-refcount3.test 555s # Running test: glib/unix-fd.test 555s TAP version 14 555s # random seed: R02S246377412d7e7daf6bc6920fd6174f25 555s 1..2 555s # Start of unix-fd tests 555s ok 1 /unix-fd/fd-list 555s ok 2 /unix-fd/scm 555s # End of unix-fd tests 555s ok - glib/unix-fd.test 555s # Running test: glib/include.test 555s ok - glib/include.test 555s # Running test: glib/closure-refcount.test 555s TAP version 14 555s # random seed: R02S37420e0aa856abd87388a097aa637f47 555s 1..1 555s # Start of include tests 555s ok 1 /include/rwlock 555s # End of include tests 555s TAP version 14 555s # random seed: R02S203accade14478c7bade1ed657c8d4d9 555s 1..1 555s # Start of closure tests 555s # Init 0xbd13d92e0d30 555s # Yielding from main thread 555s # Yielding from main thread 555s # Executing: glib/closure-refcount.test 555s # Yielding from main thread 555s # Yielding from thread1 555s # Yielding from main thread 555s # Yielding from main thread 555s # Yielding from thread2 555s # Yielding from main thread 555s # Yielding from main thread 555s # Yielding from thread2 555s # Yielding from main thread 555s # Yielding from main thread 555s ok - glib/closure-refcount.test 555s # Stopping 555s # Stopped 555s ok 1 /closure/refcount 555s # End of closure tests 555s # Running test: glib/cxx-98.test 555s TAP version 14 555s # random seed: R02S4c796054b7b1fa4ec952e9a8747ab5c1 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-98.test 555s # Running test: glib/data-output-stream.test 555s TAP version 14 555s # random seed: R02Sdd1db6ceccc327500a7c4ecab36dfe7e 555s 1..7 555s # Start of data-output-stream tests 555s ok 1 /data-output-stream/basic 555s ok 2 /data-output-stream/write-lines-LF 555s ok 3 /data-output-stream/write-lines-CR 555s ok 4 /data-output-stream/write-lines-CR-LF 555s ok 5 /data-output-stream/write-int 555s ok 6 /data-output-stream/seek 555s ok 7 /data-output-stream/truncate 555s # End of data-output-stream tests 555s ok - glib/data-output-stream.test 555s # Running test: glib/sleepy-stream.test 555s TAP version 14 555s # random seed: R02S8c483750d46cb63b556b7efd00ae9eb0 555s ok - glib/sleepy-stream.test 555s # Running test: glib/application-command-line.test 555s 1..2 555s # Start of filter-stream tests 555s ok 1 /filter-stream/input 555s ok 2 /filter-stream/async 555s # End of filter-stream tests 555s TAP version 14 555s # random seed: R02S6082f166a9f5ba9e8f6fab0057744c11 555s 1..1 555s # Start of application-command-line tests 555s ok 1 /application-command-line/basic-properties 555s ok - glib/application-command-line.test 555s # End of application-command-line tests 555s # Running test: glib/shell.test 555s TAP version 14 555s # random seed: R02Sdace419df27bcad5d319cd1c4da98017 555s 1..51 555s # Start of shell tests 555s # Start of cmdline tests 555s test cmdline: foo bar 555s ok 1 /shell/cmdline/0 555s test cmdline: foo 'bar' 555s ok 2 /shell/cmdline/1 555s test cmdline: foo "bar" 555s ok 3 /shell/cmdline/2 555s test cmdline: foo '' 'bar' 555s ok 4 /shell/cmdline/3 555s test cmdline: foo "bar"'baz'blah'foo'\''blah'"boo" 555s ok 5 /shell/cmdline/4 555s test cmdline: foo blah foo bar baz 555s ok 6 /shell/cmdline/5 555s test cmdline: foo ' spaces more spaces lots of spaces in this ' 555s ok 7 /shell/cmdline/6 555s test cmdline: foo \ 555s bar 555s ok 8 /shell/cmdline/7 555s test cmdline: foo '' '' 555s ok 9 /shell/cmdline/8 555s test cmdline: foo \" la la la 555s ok 10 /shell/cmdline/9 555s test cmdline: foo \ foo woo woo\ 555s ok 11 /shell/cmdline/10 555s test cmdline: foo "yada yada \$\"" 555s ok 12 /shell/cmdline/11 555s test cmdline: foo "c:\\" 555s ok 13 /shell/cmdline/12 555s test cmdline: foo # bla bla bla 555s bar 555s ok 14 /shell/cmdline/13 555s test cmdline: foo a#b 555s ok 15 /shell/cmdline/14 555s test cmdline: #foo 555s ok 16 /shell/cmdline/15 555s test cmdline: foo bar \ 555s ok 17 /shell/cmdline/16 555s test cmdline: foo 'bar baz 555s ok 18 /shell/cmdline/17 555s test cmdline: foo '"bar" baz 555s ok 19 /shell/cmdline/18 555s test cmdline: 555s ok 20 /shell/cmdline/19 555s test cmdline: 555s ok 21 /shell/cmdline/20 555s test cmdline: # foo bar 555s ok 22 /shell/cmdline/21 555s test cmdline: foo '/bar/summer'\''09 tours.pdf' 555s ok 23 /shell/cmdline/22 555s # End of cmdline tests 555s # Start of quote tests 555s ok 24 /shell/quote/0 555s ok 25 /shell/quote/1 555s ok 26 /shell/quote/2 555s ok 27 /shell/quote/3 555s ok 28 /shell/quote/4 555s ok 29 /shell/quote/5 555s ok 30 /shell/quote/6 555s # End of quote tests 555s # Start of unquote tests 555s ok 31 /shell/unquote/0 555s ok 32 /shell/unquote/1 555s ok 33 /shell/unquote/2 555s ok 34 /shell/unquote/3 555s ok 35 /shell/unquote/4 555s ok 36 /shell/unquote/5 555s ok 37 /shell/unquote/6 555s ok 38 /shell/unquote/7 555s ok 39 /shell/unquote/8 555s ok 40 /shell/unquote/9 555s ok 41 /shell/unquote/10 555s ok 42 /shell/unquote/11 555s ok 43 /shell/unquote/12 555s ok 44 /shell/unquote/13 555s ok 45 /shell/unquote/14 555s ok 46 /shell/unquote/15 555s ok 47 /shell/unquote/16 555s ok 48 /shell/unquote/17 555s ok 49 /shell/unquote/18 555s ok 50 /shell/unquote/19 555s ok 51 /shell/unquote/20 555s # End of unquote tests 555s # End of shell tests 555s ok - glib/shell.test 555s # Running test: glib/mkenums.py.test 555s TAP version 13 555s ok 1 __main__.TestMkenums.test_available_in 555s # glib-mkenums: /usr/bin/glib-mkenums 555s # tmpdir: /tmp/tmpskmimpyb 555s # rspfile: False 555s # /tmp/tmpskmimpyb/tmphbyhmqe6.h: 555s # typedef enum { 555s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_AVAILABLE_ENUMERATOR_IN_2_68 = (1<<2) 555s # } GDBusServerFlags; 555s # 555s # /tmp/tmpskmimpyb/tmp04t92g_9.template: 555s # /*** BEGIN file-header ***/ 555s # file-header 555s # /*** END file-header ***/ 555s # 555s # /*** BEGIN file-production ***/ 555s # file-production 555s # filename: @filename@ 555s # basename: @basename@ 555s # /*** END file-production ***/ 555s # 555s # /*** BEGIN enumeration-production ***/ 555s # enumeration-production 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END enumeration-production ***/ 555s # 555s # /*** BEGIN value-header ***/ 555s # value-header 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-header ***/ 555s # 555s # /*** BEGIN value-production ***/ 555s # value-production 555s # VALUENAME: @VALUENAME@ 555s # valuenick: @valuenick@ 555s # valuenum: @valuenum@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-production ***/ 555s # 555s # /*** BEGIN value-tail ***/ 555s # value-tail 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-tail ***/ 555s # 555s # /*** BEGIN comment ***/ 555s # comment 555s # comment: @comment@ 555s # /*** END comment ***/ 555s # 555s # /*** BEGIN file-tail ***/ 555s # file-tail 555s # /*** END file-tail ***/ 555s # 555s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpskmimpyb/tmp04t92g_9.template', '/tmp/tmpskmimpyb/tmphbyhmqe6.h'] 555s # Return code: 0 555s # Output: 555s # comment 555s # 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. 555s # 555s # 555s # file-header 555s # file-production 555s # filename: /tmp/tmpskmimpyb/tmphbyhmqe6.h 555s # basename: tmphbyhmqe6.h 555s # enumeration-production 555s # EnumName: GDBusServerFlags 555s # enum_name: g_dbus_server_flags 555s # ENUMNAME: G_DBUS_SERVER_FLAGS 555s # ENUMSHORT: DBUS_SERVER_FLAGS 555s # ENUMPREFIX: G 555s # enumsince: 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # value-header 555s # EnumName: GDBusServerFlags 555s # enum_name: g_dbus_server_flags 555s # ENUMNAME: G_DBUS_SERVER_FLAGS 555s # ENUMSHORT: DBUS_SERVER_FLAGS 555s # ENUMPREFIX: G 555s # enumsince: 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # value-production 555s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 555s # valuenick: user 555s # valuenum: 4 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # value-tail 555s # EnumName: GDBusServerFlags 555s # enum_name: g_dbus_server_flags 555s # ENUMNAME: G_DBUS_SERVER_FLAGS 555s # ENUMSHORT: DBUS_SERVER_FLAGS 555s # ENUMPREFIX: G 555s # enumsince: 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # file-tail 555s # 555s # comment 555s # comment: Generated data ends here 555s # Error: 555s ok 2 __main__.TestMkenums.test_comma_in_enum_value 555s # glib-mkenums: /usr/bin/glib-mkenums 555s # tmpdir: /tmp/tmpzpw0hjle 555s # rspfile: False 555s # /tmp/tmpzpw0hjle/tmp4y1sh03m.h: 555s # typedef enum { 555s # ENUM_VALUE_WITH_COMMA = ',', 555s # } TestCommaEnum; 555s # 555s # /tmp/tmpzpw0hjle/tmphzgqf3_p.template: 555s # /*** BEGIN file-header ***/ 555s # file-header 555s # /*** END file-header ***/ 555s # 555s # /*** BEGIN file-production ***/ 555s # file-production 555s # filename: @filename@ 555s # basename: @basename@ 555s # /*** END file-production ***/ 555s # 555s # /*** BEGIN enumeration-production ***/ 555s # enumeration-production 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END enumeration-production ***/ 555s # 555s # /*** BEGIN value-header ***/ 555s # value-header 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-header ***/ 555s # 555s # /*** BEGIN value-production ***/ 555s # value-production 555s # VALUENAME: @VALUENAME@ 555s # valuenick: @valuenick@ 555s # valuenum: @valuenum@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-production ***/ 555s # 555s # /*** BEGIN value-tail ***/ 555s # value-tail 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-tail ***/ 555s # 555s # /*** BEGIN comment ***/ 555s # comment 555s # comment: @comment@ 555s # /*** END comment ***/ 555s # 555s # /*** BEGIN file-tail ***/ 555s # file-tail 555s # /*** END file-tail ***/ 555s # 555s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpzpw0hjle/tmphzgqf3_p.template', '/tmp/tmpzpw0hjle/tmp4y1sh03m.h'] 555s # Return code: 0 555s # Output: 555s # comment 555s # 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. 555s # 555s # 555s # file-header 555s # file-production 555s # filename: /tmp/tmpzpw0hjle/tmp4y1sh03m.h 555s # basename: tmp4y1sh03m.h 555s # enumeration-production 555s # EnumName: TestCommaEnum 555s # enum_name: test_comma_enum 555s # ENUMNAME: TEST_COMMA_ENUM 555s # ENUMSHORT: COMMA_ENUM 555s # ENUMPREFIX: TEST 555s # enumsince: 555s # type: enum 555s # Type: Enum 555s # TYPE: ENUM 555s # value-header 555s # EnumName: TestCommaEnum 555s # enum_name: test_comma_enum 555s # ENUMNAME: TEST_COMMA_ENUM 555s # ENUMSHORT: COMMA_ENUM 555s # ENUMPREFIX: TEST 555s # enumsince: 555s # type: enum 555s # Type: Enum 555s # TYPE: ENUM 555s # value-production 555s # VALUENAME: ENUM_VALUE_WITH_COMMA 555s # valuenick: comma 555s # valuenum: 44 555s # type: enum 555s # Type: Enum 555s # TYPE: ENUM 555s # value-tail 555s # EnumName: TestCommaEnum 555s # enum_name: test_comma_enum 555s # ENUMNAME: TEST_COMMA_ENUM 555s # ENUMSHORT: COMMA_ENUM 555s # ENUMPREFIX: TEST 555s # enumsince: 555s # type: enum 555s # Type: Enum 555s # TYPE: ENUM 555s # file-tail 555s # 555s # comment 555s # comment: Generated data ends here 555s # Error: 555s ok 3 __main__.TestMkenums.test_deprecated_in 555s # glib-mkenums: /usr/bin/glib-mkenums 555s # tmpdir: /tmp/tmp0v1f6chk 555s # rspfile: False 555s # /tmp/tmp0v1f6chk/tmpf9womhoy.h: 555s # typedef enum { 555s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68 = (1<<2) 555s # } GDBusServerFlags; 555s # 555s # /tmp/tmp0v1f6chk/tmpo9ouoli2.template: 555s # /*** BEGIN file-header ***/ 555s # file-header 555s # /*** END file-header ***/ 555s # 555s # /*** BEGIN file-production ***/ 555s # file-production 555s # filename: @filename@ 555s # basename: @basename@ 555s # /*** END file-production ***/ 555s # 555s # /*** BEGIN enumeration-production ***/ 555s # enumeration-production 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END enumeration-production ***/ 555s # 555s # /*** BEGIN value-header ***/ 555s # value-header 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-header ***/ 555s # 555s # /*** BEGIN value-production ***/ 555s # value-production 555s # VALUENAME: @VALUENAME@ 555s # valuenick: @valuenick@ 555s # valuenum: @valuenum@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-production ***/ 555s # 555s # /*** BEGIN value-tail ***/ 555s # value-tail 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-tail ***/ 555s # 555s # /*** BEGIN comment ***/ 555s # comment 555s # comment: @comment@ 555s # /*** END comment ***/ 555s # 555s # /*** BEGIN file-tail ***/ 555s # file-tail 555s # /*** END file-tail ***/ 555s # 555s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp0v1f6chk/tmpo9ouoli2.template', '/tmp/tmp0v1f6chk/tmpf9womhoy.h'] 555s # Return code: 0 555s # Output: 555s # comment 555s # 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. 555s # 555s # 555s # file-header 555s # file-production 555s # filename: /tmp/tmp0v1f6chk/tmpf9womhoy.h 555s # basename: tmpf9womhoy.h 555s # enumeration-production 555s # EnumName: GDBusServerFlags 555s # enum_name: g_dbus_server_flags 555s # ENUMNAME: G_DBUS_SERVER_FLAGS 555s # ENUMSHORT: DBUS_SERVER_FLAGS 555s # ENUMPREFIX: G 555s # enumsince: 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # value-header 555s # EnumName: GDBusServerFlags 555s # enum_name: g_dbus_server_flags 555s # ENUMNAME: G_DBUS_SERVER_FLAGS 555s # ENUMSHORT: DBUS_SERVER_FLAGS 555s # ENUMPREFIX: G 555s # enumsince: 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # value-production 555s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 555s # valuenick: user 555s # valuenum: 4 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # value-tail 555s # EnumName: GDBusServerFlags 555s # enum_name: g_dbus_server_flags 555s # ENUMNAME: G_DBUS_SERVER_FLAGS 555s # ENUMSHORT: DBUS_SERVER_FLAGS 555s # ENUMPREFIX: G 555s # enumsince: 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # file-tail 555s # 555s # comment 555s # comment: Generated data ends here 555s # Error: 555s ok 4 __main__.TestMkenums.test_deprecated_in_for 555s # glib-mkenums: /usr/bin/glib-mkenums 555s # tmpdir: /tmp/tmp6k64apg9 555s # rspfile: False 555s # /tmp/tmp6k64apg9/tmpbk_a6c2w.h: 555s # typedef enum { 555s # 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) 555s # } GDBusServerFlags; 555s # 555s # /tmp/tmp6k64apg9/tmp0bmhaudo.template: 555s # /*** BEGIN file-header ***/ 555s # file-header 555s # /*** END file-header ***/ 555s # 555s # /*** BEGIN file-production ***/ 555s # file-production 555s # filename: @filename@ 555s # basename: @basename@ 555s # /*** END file-production ***/ 555s # 555s # /*** BEGIN enumeration-production ***/ 555s # enumeration-production 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END enumeration-production ***/ 555s # 555s # /*** BEGIN value-header ***/ 555s # value-header 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-header ***/ 555s # 555s # /*** BEGIN value-production ***/ 555s # value-production 555s # VALUENAME: @VALUENAME@ 555s # valuenick: @valuenick@ 555s # valuenum: @valuenum@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-production ***/ 555s # 555s # /*** BEGIN value-tail ***/ 555s # value-tail 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-tail ***/ 555s # 555s # /*** BEGIN comment ***/ 555s # comment 555s # comment: @comment@ 555s # /*** END comment ***/ 555s # 555s # /*** BEGIN file-tail ***/ 555s # file-tail 555s # /*** END file-tail ***/ 555s # 555s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp6k64apg9/tmp0bmhaudo.template', '/tmp/tmp6k64apg9/tmpbk_a6c2w.h'] 555s # Return code: 0 555s # Output: 555s # comment 555s # 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. 555s # 555s # 555s # file-header 555s # file-production 555s # filename: /tmp/tmp6k64apg9/tmpbk_a6c2w.h 555s # basename: tmpbk_a6c2w.h 555s # enumeration-production 555s # EnumName: GDBusServerFlags 555s # enum_name: g_dbus_server_flags 555s # ENUMNAME: G_DBUS_SERVER_FLAGS 555s # ENUMSHORT: DBUS_SERVER_FLAGS 555s # ENUMPREFIX: G 555s # enumsince: 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # value-header 555s # EnumName: GDBusServerFlags 555s # enum_name: g_dbus_server_flags 555s # ENUMNAME: G_DBUS_SERVER_FLAGS 555s # ENUMSHORT: DBUS_SERVER_FLAGS 555s # ENUMPREFIX: G 555s # enumsince: 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # value-production 555s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 555s # valuenick: user 555s # valuenum: 4 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # value-tail 555s # EnumName: GDBusServerFlags 555s # enum_name: g_dbus_server_flags 555s # ENUMNAME: G_DBUS_SERVER_FLAGS 555s # ENUMSHORT: DBUS_SERVER_FLAGS 555s # ENUMPREFIX: G 555s # enumsince: 555s # type: flags 555s # Type: Flags 555s # TYPE: FLAGS 555s # file-tail 555s # 555s # comment 555s # comment: Generated data ends here 555s # Error: 555s ok 5 __main__.TestMkenums.test_empty_header 555s # glib-mkenums: /usr/bin/glib-mkenums 555s # tmpdir: /tmp/tmpi4p4ou_u 555s # rspfile: False 555s # /tmp/tmpi4p4ou_u/tmp_jz_87_y.h: 555s # /tmp/tmpi4p4ou_u/tmpwdg9zosg.template: 555s # /*** BEGIN file-header ***/ 555s # file-header 555s # /*** END file-header ***/ 555s # 555s # /*** BEGIN file-production ***/ 555s # file-production 555s # filename: @filename@ 555s # basename: @basename@ 555s # /*** END file-production ***/ 555s # 555s # /*** BEGIN enumeration-production ***/ 555s # enumeration-production 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END enumeration-production ***/ 555s # 555s # /*** BEGIN value-header ***/ 555s # value-header 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-header ***/ 555s # 555s # /*** BEGIN value-production ***/ 555s # value-production 555s # VALUENAME: @VALUENAME@ 555s # valuenick: @valuenick@ 555s # valuenum: @valuenum@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-production ***/ 555s # 555s # /*** BEGIN value-tail ***/ 555s # value-tail 555s # EnumName: @EnumName@ 555s # enum_name: @enum_name@ 555s # ENUMNAME: @ENUMNAME@ 555s # ENUMSHORT: @ENUMSHORT@ 555s # ENUMPREFIX: @ENUMPREFIX@ 555s # enumsince: @enumsince@ 555s # type: @type@ 555s # Type: @Type@ 555s # TYPE: @TYPE@ 555s # /*** END value-tail ***/ 555s # 555s # /*** BEGIN comment ***/ 555s # comment 555s # comment: @comment@ 555s # /*** END comment ***/ 555s # 555s # /*** BEGIN file-tail ***/ 555s # file-tail 555s # /*** END file-tail ***/ 555s # 555s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpi4p4ou_u/tmpwdg9zosg.template', '/tmp/tmpi4p4ou_u/tmp_jz_87_y.h'] 555s # Return code: 0 555s # Output: 555s # comment 555s # 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. 555s # 555s # 555s # file-header 555s # file-tail 555s # 555s # comment 555s # comment: Generated data ends here 555s # Error: 556s ok 6 __main__.TestMkenums.test_empty_template 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmpaex36jge 556s # rspfile: False 556s # /tmp/tmpaex36jge/tmpwbvmj5cj.template: 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpaex36jge/tmpwbvmj5cj.template'] 556s # Return code: 0 556s # Output: 556s # /* 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. */ 556s # 556s # 556s # /* Generated data ends here */ 556s # Error: 556s ok 7 __main__.TestMkenums.test_enum_name 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmpr75vk6gk 556s # rspfile: False 556s # /tmp/tmpr75vk6gk/tmp747n8qol.h: 556s # typedef enum _SomeEnumIdentifier { 556s # ENUM_VALUE 556s # } SomeEnumIdentifier; 556s # 556s # /tmp/tmpr75vk6gk/tmpj11tppq0.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpr75vk6gk/tmpj11tppq0.template', '/tmp/tmpr75vk6gk/tmp747n8qol.h'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmpr75vk6gk/tmp747n8qol.h 556s # basename: tmp747n8qol.h 556s # enumeration-production 556s # EnumName: SomeEnumIdentifier 556s # enum_name: some_enum_identifier 556s # ENUMNAME: SOME_ENUM_IDENTIFIER 556s # ENUMSHORT: ENUM_IDENTIFIER 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: SomeEnumIdentifier 556s # enum_name: some_enum_identifier 556s # ENUMNAME: SOME_ENUM_IDENTIFIER 556s # ENUMSHORT: ENUM_IDENTIFIER 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: ENUM_VALUE 556s # valuenick: value 556s # valuenum: 0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: SomeEnumIdentifier 556s # enum_name: some_enum_identifier 556s # ENUMNAME: SOME_ENUM_IDENTIFIER 556s # ENUMSHORT: ENUM_IDENTIFIER 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 8 __main__.TestMkenums.test_enum_private_public 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmp5dyec7vi 556s # rspfile: False 556s # /tmp/tmp5dyec7vi/tmpo_p6ixsz.h: 556s # typedef enum { 556s # ENUM_VALUE_PUBLIC1, 556s # /*< private >*/ 556s # ENUM_VALUE_PRIVATE, 556s # } SomeEnumA 556s # 556s # /tmp/tmp5dyec7vi/tmpkk50e99f.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp5dyec7vi/tmpkk50e99f.template', '/tmp/tmp5dyec7vi/tmpo_p6ixsz.h'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmp5dyec7vi/tmpo_p6ixsz.h 556s # basename: tmpo_p6ixsz.h 556s # enumeration-production 556s # EnumName: SomeEnumA 556s # enum_name: some_enum_a 556s # ENUMNAME: SOME_ENUM_A 556s # ENUMSHORT: ENUM_A 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: SomeEnumA 556s # enum_name: some_enum_a 556s # ENUMNAME: SOME_ENUM_A 556s # ENUMSHORT: ENUM_A 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: ENUM_VALUE_PUBLIC1 556s # valuenick: public1 556s # valuenum: 0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: SomeEnumA 556s # enum_name: some_enum_a 556s # ENUMNAME: SOME_ENUM_A 556s # ENUMSHORT: ENUM_A 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s # 556s # /tmp/tmp5dyec7vi/tmppdza5xio.h: 556s # typedef enum { 556s # /*< private >*/ 556s # ENUM_VALUE_PRIVATE, 556s # /*< public >*/ 556s # ENUM_VALUE_PUBLIC2, 556s # } SomeEnumB; 556s # 556s # /tmp/tmp5dyec7vi/tmpb0szylzj.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp5dyec7vi/tmpb0szylzj.template', '/tmp/tmp5dyec7vi/tmppdza5xio.h'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmp5dyec7vi/tmppdza5xio.h 556s # basename: tmppdza5xio.h 556s # enumeration-production 556s # EnumName: SomeEnumB 556s # enum_name: some_enum_b 556s # ENUMNAME: SOME_ENUM_B 556s # ENUMSHORT: ENUM_B 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: SomeEnumB 556s # enum_name: some_enum_b 556s # ENUMNAME: SOME_ENUM_B 556s # ENUMSHORT: ENUM_B 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: ENUM_VALUE_PUBLIC2 556s # valuenick: public2 556s # valuenum: 1 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: SomeEnumB 556s # enum_name: some_enum_b 556s # ENUMNAME: SOME_ENUM_B 556s # ENUMSHORT: ENUM_B 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 9 __main__.TestMkenums.test_enum_symbolic_expression 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmpgu8q8qc1 556s # rspfile: False 556s # /tmp/tmpgu8q8qc1/tmpy_02ehdh.h: 556s # typedef enum { 556s # /*< private >*/ 556s # ENUM_VALUE_PRIVATE = 5, 556s # /*< public >*/ 556s # ENUM_VALUE_PUBLIC = ENUM_VALUE_PRIVATE + 2, 556s # } TestSymbolicEnum; 556s # 556s # /tmp/tmpgu8q8qc1/tmp_74nx3w4.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpgu8q8qc1/tmp_74nx3w4.template', '/tmp/tmpgu8q8qc1/tmpy_02ehdh.h'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmpgu8q8qc1/tmpy_02ehdh.h 556s # basename: tmpy_02ehdh.h 556s # enumeration-production 556s # EnumName: TestSymbolicEnum 556s # enum_name: test_symbolic_enum 556s # ENUMNAME: TEST_SYMBOLIC_ENUM 556s # ENUMSHORT: SYMBOLIC_ENUM 556s # ENUMPREFIX: TEST 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: TestSymbolicEnum 556s # enum_name: test_symbolic_enum 556s # ENUMNAME: TEST_SYMBOLIC_ENUM 556s # ENUMSHORT: SYMBOLIC_ENUM 556s # ENUMPREFIX: TEST 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: ENUM_VALUE_PUBLIC 556s # valuenick: public 556s # valuenum: 7 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: TestSymbolicEnum 556s # enum_name: test_symbolic_enum 556s # ENUMNAME: TEST_SYMBOLIC_ENUM 556s # ENUMSHORT: SYMBOLIC_ENUM 556s # ENUMPREFIX: TEST 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 10 __main__.TestMkenums.test_filename_basename_in_fhead_ftail 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmppyzqquh3 556s # rspfile: False 556s # /tmp/tmppyzqquh3/tmp4ltqgl4_.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-tail ***/ 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmppyzqquh3/tmp4ltqgl4_.template'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # filename: @filename@ 556s # basename: @basename@ 556s # file-tail 556s # filename: @filename@ 556s # basename: @basename@ 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s # WARNING: @filename@ used in file-header section. 556s # WARNING: @basename@ used in file-header section. 556s # WARNING: @filename@ used in file-tail section. 556s # WARNING: @basename@ used in file-tail section. 556s ok 11 __main__.TestMkenums.test_help 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmpaqdzma7n 556s # rspfile: False 556s # Running: ['/usr/bin/glib-mkenums', '--help'] 556s # Return code: 0 556s # Output: 556s # usage: glib-mkenums [-h] [--identifier-prefix IDPREFIX] 556s # [--symbol-prefix SYMPREFIX] [--fhead FHEAD] 556s # [--ftail FTAIL] [--fprod FPROD] [--eprod EPROD] 556s # [--vhead VHEAD] [--vprod VPROD] [--vtail VTAIL] 556s # [--comments COMMENT_TMPL] [--template TEMPLATE] 556s # [--output OUTPUT] [--version] 556s # [args ...] 556s # 556s # positional arguments: 556s # args One or more input files, or a single argument 556s # @rspfile_path pointing to a file that contains the 556s # actual arguments 556s # 556s # options: 556s # -h, --help show this help message and exit 556s # --identifier-prefix IDPREFIX 556s # Identifier prefix 556s # --symbol-prefix SYMPREFIX 556s # Symbol prefix 556s # --fhead FHEAD Output file header 556s # --ftail FTAIL Output file footer 556s # --fprod FPROD Put out TEXT every time a new input file is being 556s # processed. 556s # --eprod EPROD Per enum text, produced prior to value iterations 556s # --vhead VHEAD Value header, produced before iterating over enum 556s # values 556s # --vprod VPROD Value text, produced for each enum value. 556s # --vtail VTAIL Value tail, produced after iterating over enum values 556s # --comments COMMENT_TMPL 556s # Comment structure 556s # --template TEMPLATE Template file 556s # --output OUTPUT 556s # --version, -v Print version information 556s # 556s # Production text substitutions: 556s # @EnumName@ PrefixTheXEnum 556s # @enum_name@ prefix_the_xenum 556s # @ENUMNAME@ PREFIX_THE_XENUM 556s # @ENUMSHORT@ THE_XENUM 556s # @ENUMPREFIX@ PREFIX 556s # @enumsince@ the user-provided since value given 556s # @VALUENAME@ PREFIX_THE_XVALUE 556s # @valuenick@ the-xvalue 556s # @valuenum@ the integer value (limited support, Since: 2.26) 556s # @type@ either enum or flags 556s # @Type@ either Enum or Flags 556s # @TYPE@ either ENUM or FLAGS 556s # @filename@ name of current input file 556s # @basename@ base name of the current input file (Since: 2.22) 556s # Error: 556s ok 12 __main__.TestMkenums.test_no_args 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmp5_roi9yo 556s # rspfile: False 556s # Running: ['/usr/bin/glib-mkenums'] 556s # Return code: 0 556s # Output: 556s # /* 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. */ 556s # 556s # 556s # /* Generated data ends here */ 556s # Error: 556s ok 13 __main__.TestMkenums.test_no_headers 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmp8o_34bm2 556s # rspfile: False 556s # /tmp/tmp8o_34bm2/tmpe2tf5k4a.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp8o_34bm2/tmpe2tf5k4a.template'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 14 __main__.TestMkenums.test_no_nick 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmpp9bterjr 556s # rspfile: False 556s # /tmp/tmpp9bterjr/tmp9annnb0z.h: 556s # typedef enum { 556s # GEGL_SAMPLER_NEAREST = 0, /*< desc="nearest" >*/ 556s # } GeglSamplerType; 556s # 556s # /tmp/tmpp9bterjr/tmphpsfg7lt.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpp9bterjr/tmphpsfg7lt.template', '/tmp/tmpp9bterjr/tmp9annnb0z.h'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmpp9bterjr/tmp9annnb0z.h 556s # basename: tmp9annnb0z.h 556s # enumeration-production 556s # EnumName: GeglSamplerType 556s # enum_name: gegl_sampler_type 556s # ENUMNAME: GEGL_SAMPLER_TYPE 556s # ENUMSHORT: SAMPLER_TYPE 556s # ENUMPREFIX: GEGL 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: GeglSamplerType 556s # enum_name: gegl_sampler_type 556s # ENUMNAME: GEGL_SAMPLER_TYPE 556s # ENUMSHORT: SAMPLER_TYPE 556s # ENUMPREFIX: GEGL 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: GEGL_SAMPLER_NEAREST 556s # valuenick: nearest 556s # valuenum: 0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: GeglSamplerType 556s # enum_name: gegl_sampler_type 556s # ENUMNAME: GEGL_SAMPLER_TYPE 556s # ENUMSHORT: SAMPLER_TYPE 556s # ENUMPREFIX: GEGL 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 15 __main__.TestMkenums.test_non_utf8_encoding 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmpa1_2fim3 556s # rspfile: False 556s # /tmp/tmpa1_2fim3/tmpwx7el8ni.h: 556s # /* Copyright © La Peña */ 556s # typedef enum { 556s # ENUM_VALUE 556s # } SomeEnumIdentifier; 556s # 556s # /tmp/tmpa1_2fim3/tmpxnqollir.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpa1_2fim3/tmpxnqollir.template', '/tmp/tmpa1_2fim3/tmpwx7el8ni.h'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmpa1_2fim3/tmpwx7el8ni.h 556s # basename: tmpwx7el8ni.h 556s # enumeration-production 556s # EnumName: SomeEnumIdentifier 556s # enum_name: some_enum_identifier 556s # ENUMNAME: SOME_ENUM_IDENTIFIER 556s # ENUMSHORT: ENUM_IDENTIFIER 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: SomeEnumIdentifier 556s # enum_name: some_enum_identifier 556s # ENUMNAME: SOME_ENUM_IDENTIFIER 556s # ENUMSHORT: ENUM_IDENTIFIER 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: ENUM_VALUE 556s # valuenick: value 556s # valuenum: 0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: SomeEnumIdentifier 556s # enum_name: some_enum_identifier 556s # ENUMNAME: SOME_ENUM_IDENTIFIER 556s # ENUMSHORT: ENUM_IDENTIFIER 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s # WARNING: UnicodeWarning: invalid start byte at 22 (b'yright \xa9 La Pe\xf1') 556s # WARNING: UnicodeWarning: invalid continuation byte at 29 (b'\xa9 La Pe\xf1a */\n ') 556s ok 16 __main__.TestMkenums.test_reproducible 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmpa0qxf0zu 556s # rspfile: False 556s # /tmp/tmpa0qxf0zu/tmpoct8xy6x.template: template 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpa0qxf0zu/tmpoct8xy6x.template', '/tmp/tmpa0qxf0zu/tmp7vwirdrc1.h', '/tmp/tmpa0qxf0zu/tmpo4e73iho2.h'] 556s # Return code: 0 556s # Output: 556s # /* 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. */ 556s # 556s # 556s # /* Generated data ends here */ 556s # Error: 556s # 556s # /tmp/tmpa0qxf0zu/tmp5uqmeoot.template: template 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmpa0qxf0zu/tmp5uqmeoot.template', '/tmp/tmpa0qxf0zu/tmpo4e73iho2.h', '/tmp/tmpa0qxf0zu/tmp7vwirdrc1.h'] 556s # Return code: 0 556s # Output: 556s # /* 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. */ 556s # 556s # 556s # /* Generated data ends here */ 556s # Error: 556s ok 17 __main__.TestMkenums.test_since 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmp6gyed33w 556s # rspfile: False 556s # /tmp/tmp6gyed33w/tmpfq974ci0.h: 556s # typedef enum { /*< since=1.0 >*/ 556s # QMI_WMS_MESSAGE_PROTOCOL_CDMA = 0, 556s # } QmiWmsMessageProtocol; 556s # 556s # /tmp/tmp6gyed33w/tmpmi8ktpn9.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp6gyed33w/tmpmi8ktpn9.template', '/tmp/tmp6gyed33w/tmpfq974ci0.h'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmp6gyed33w/tmpfq974ci0.h 556s # basename: tmpfq974ci0.h 556s # enumeration-production 556s # EnumName: QmiWmsMessageProtocol 556s # enum_name: qmi_wms_message_protocol 556s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 556s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 556s # ENUMPREFIX: QMI 556s # enumsince: 1.0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: QmiWmsMessageProtocol 556s # enum_name: qmi_wms_message_protocol 556s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 556s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 556s # ENUMPREFIX: QMI 556s # enumsince: 1.0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: QMI_WMS_MESSAGE_PROTOCOL_CDMA 556s # valuenick: cdma 556s # valuenum: 0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: QmiWmsMessageProtocol 556s # enum_name: qmi_wms_message_protocol 556s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 556s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 556s # ENUMPREFIX: QMI 556s # enumsince: 1.0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 18 __main__.TestMkenums.test_with_double_quotes 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmp07k90_6y 556s # rspfile: False 556s # /tmp/tmp07k90_6y/tmpzfhwhg5u.h: 556s # typedef enum { 556s # FOO_VALUE /*< nick="eek, a comma" >*/ 556s # } Foo; 556s # 556s # /tmp/tmp07k90_6y/tmp4ol7kd3f.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Running: ['/usr/bin/glib-mkenums', '--template', '/tmp/tmp07k90_6y/tmp4ol7kd3f.template', '/tmp/tmp07k90_6y/tmpzfhwhg5u.h'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmp07k90_6y/tmpzfhwhg5u.h 556s # basename: tmpzfhwhg5u.h 556s # enumeration-production 556s # EnumName: Foo 556s # enum_name: foo_ 556s # ENUMNAME: FOO_ 556s # ENUMSHORT: 556s # ENUMPREFIX: FOO 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: Foo 556s # enum_name: foo_ 556s # ENUMNAME: FOO_ 556s # ENUMSHORT: 556s # ENUMPREFIX: FOO 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: FOO_VALUE 556s # valuenick: eek, a comma 556s # valuenum: 0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: Foo 556s # enum_name: foo_ 556s # ENUMNAME: FOO_ 556s # ENUMSHORT: 556s # ENUMPREFIX: FOO 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 19 __main__.TestRspMkenums.test_available_in 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmp9bw2o54y 556s # rspfile: True 556s # /tmp/tmp9bw2o54y/tmpfs8u0ayj.h: 556s # typedef enum { 556s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_AVAILABLE_ENUMERATOR_IN_2_68 = (1<<2) 556s # } GDBusServerFlags; 556s # 556s # /tmp/tmp9bw2o54y/tmpyphybtyw.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Response file contains: --template /tmp/tmp9bw2o54y/tmpyphybtyw.template /tmp/tmp9bw2o54y/tmpfs8u0ayj.h 556s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp9bw2o54y/tmpglz_3u_3'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmp9bw2o54y/tmpfs8u0ayj.h 556s # basename: tmpfs8u0ayj.h 556s # enumeration-production 556s # EnumName: GDBusServerFlags 556s # enum_name: g_dbus_server_flags 556s # ENUMNAME: G_DBUS_SERVER_FLAGS 556s # ENUMSHORT: DBUS_SERVER_FLAGS 556s # ENUMPREFIX: G 556s # enumsince: 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # value-header 556s # EnumName: GDBusServerFlags 556s # enum_name: g_dbus_server_flags 556s # ENUMNAME: G_DBUS_SERVER_FLAGS 556s # ENUMSHORT: DBUS_SERVER_FLAGS 556s # ENUMPREFIX: G 556s # enumsince: 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # value-production 556s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 556s # valuenick: user 556s # valuenum: 4 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # value-tail 556s # EnumName: GDBusServerFlags 556s # enum_name: g_dbus_server_flags 556s # ENUMNAME: G_DBUS_SERVER_FLAGS 556s # ENUMSHORT: DBUS_SERVER_FLAGS 556s # ENUMPREFIX: G 556s # enumsince: 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 20 __main__.TestRspMkenums.test_comma_in_enum_value 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmp7y6x2a6h 556s # rspfile: True 556s # /tmp/tmp7y6x2a6h/tmpfbj7fz_r.h: 556s # typedef enum { 556s # ENUM_VALUE_WITH_COMMA = ',', 556s # } TestCommaEnum; 556s # 556s # /tmp/tmp7y6x2a6h/tmpqs__h2zj.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Response file contains: --template /tmp/tmp7y6x2a6h/tmpqs__h2zj.template /tmp/tmp7y6x2a6h/tmpfbj7fz_r.h 556s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp7y6x2a6h/tmpl02h25pg'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmp7y6x2a6h/tmpfbj7fz_r.h 556s # basename: tmpfbj7fz_r.h 556s # enumeration-production 556s # EnumName: TestCommaEnum 556s # enum_name: test_comma_enum 556s # ENUMNAME: TEST_COMMA_ENUM 556s # ENUMSHORT: COMMA_ENUM 556s # ENUMPREFIX: TEST 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: TestCommaEnum 556s # enum_name: test_comma_enum 556s # ENUMNAME: TEST_COMMA_ENUM 556s # ENUMSHORT: COMMA_ENUM 556s # ENUMPREFIX: TEST 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: ENUM_VALUE_WITH_COMMA 556s # valuenick: comma 556s # valuenum: 44 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: TestCommaEnum 556s # enum_name: test_comma_enum 556s # ENUMNAME: TEST_COMMA_ENUM 556s # ENUMSHORT: COMMA_ENUM 556s # ENUMPREFIX: TEST 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 21 __main__.TestRspMkenums.test_deprecated_in 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmp3qrb_8la 556s # rspfile: True 556s # /tmp/tmp3qrb_8la/tmplwnpjph5.h: 556s # typedef enum { 556s # G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER GLIB_DEPRECATED_ENUMERATOR_IN_2_68 = (1<<2) 556s # } GDBusServerFlags; 556s # 556s # /tmp/tmp3qrb_8la/tmpliivbic1.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Response file contains: --template /tmp/tmp3qrb_8la/tmpliivbic1.template /tmp/tmp3qrb_8la/tmplwnpjph5.h 556s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp3qrb_8la/tmprz6x3ak2'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmp3qrb_8la/tmplwnpjph5.h 556s # basename: tmplwnpjph5.h 556s # enumeration-production 556s # EnumName: GDBusServerFlags 556s # enum_name: g_dbus_server_flags 556s # ENUMNAME: G_DBUS_SERVER_FLAGS 556s # ENUMSHORT: DBUS_SERVER_FLAGS 556s # ENUMPREFIX: G 556s # enumsince: 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # value-header 556s # EnumName: GDBusServerFlags 556s # enum_name: g_dbus_server_flags 556s # ENUMNAME: G_DBUS_SERVER_FLAGS 556s # ENUMSHORT: DBUS_SERVER_FLAGS 556s # ENUMPREFIX: G 556s # enumsince: 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # value-production 556s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 556s # valuenick: user 556s # valuenum: 4 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # value-tail 556s # EnumName: GDBusServerFlags 556s # enum_name: g_dbus_server_flags 556s # ENUMNAME: G_DBUS_SERVER_FLAGS 556s # ENUMSHORT: DBUS_SERVER_FLAGS 556s # ENUMPREFIX: G 556s # enumsince: 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 22 __main__.TestRspMkenums.test_deprecated_in_for 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmps5e0f912 556s # rspfile: True 556s # /tmp/tmps5e0f912/tmpxjdlbpqe.h: 556s # typedef enum { 556s # 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) 556s # } GDBusServerFlags; 556s # 556s # /tmp/tmps5e0f912/tmp3mq2r_9o.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Response file contains: --template /tmp/tmps5e0f912/tmp3mq2r_9o.template /tmp/tmps5e0f912/tmpxjdlbpqe.h 556s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmps5e0f912/tmpvt5w4p8p'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmps5e0f912/tmpxjdlbpqe.h 556s # basename: tmpxjdlbpqe.h 556s # enumeration-production 556s # EnumName: GDBusServerFlags 556s # enum_name: g_dbus_server_flags 556s # ENUMNAME: G_DBUS_SERVER_FLAGS 556s # ENUMSHORT: DBUS_SERVER_FLAGS 556s # ENUMPREFIX: G 556s # enumsince: 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # value-header 556s # EnumName: GDBusServerFlags 556s # enum_name: g_dbus_server_flags 556s # ENUMNAME: G_DBUS_SERVER_FLAGS 556s # ENUMSHORT: DBUS_SERVER_FLAGS 556s # ENUMPREFIX: G 556s # enumsince: 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # value-production 556s # VALUENAME: G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER 556s # valuenick: user 556s # valuenum: 4 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # value-tail 556s # EnumName: GDBusServerFlags 556s # enum_name: g_dbus_server_flags 556s # ENUMNAME: G_DBUS_SERVER_FLAGS 556s # ENUMSHORT: DBUS_SERVER_FLAGS 556s # ENUMPREFIX: G 556s # enumsince: 556s # type: flags 556s # Type: Flags 556s # TYPE: FLAGS 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 23 __main__.TestRspMkenums.test_empty_header 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmppqkpirsa 556s # rspfile: True 556s # /tmp/tmppqkpirsa/tmpwqlla8gp.h: 556s # /tmp/tmppqkpirsa/tmp7z5auedh.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Response file contains: --template /tmp/tmppqkpirsa/tmp7z5auedh.template /tmp/tmppqkpirsa/tmpwqlla8gp.h 556s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmppqkpirsa/tmp4vxs93cj'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 556s ok 24 __main__.TestRspMkenums.test_empty_template 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmpapu02vp8 556s # rspfile: True 556s # /tmp/tmpapu02vp8/tmpd89es3b8.template: 556s # Response file contains: --template /tmp/tmpapu02vp8/tmpd89es3b8.template 556s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpapu02vp8/tmp4kv91n0f'] 556s # Return code: 0 556s # Output: 556s # /* 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. */ 556s # 556s # 556s # /* Generated data ends here */ 556s # Error: 556s ok 25 __main__.TestRspMkenums.test_enum_name 556s # glib-mkenums: /usr/bin/glib-mkenums 556s # tmpdir: /tmp/tmp4jph7bft 556s # rspfile: True 556s # /tmp/tmp4jph7bft/tmp7kzo6ukj.h: 556s # typedef enum _SomeEnumIdentifier { 556s # ENUM_VALUE 556s # } SomeEnumIdentifier; 556s # 556s # /tmp/tmp4jph7bft/tmpebmg4zvu.template: 556s # /*** BEGIN file-header ***/ 556s # file-header 556s # /*** END file-header ***/ 556s # 556s # /*** BEGIN file-production ***/ 556s # file-production 556s # filename: @filename@ 556s # basename: @basename@ 556s # /*** END file-production ***/ 556s # 556s # /*** BEGIN enumeration-production ***/ 556s # enumeration-production 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END enumeration-production ***/ 556s # 556s # /*** BEGIN value-header ***/ 556s # value-header 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-header ***/ 556s # 556s # /*** BEGIN value-production ***/ 556s # value-production 556s # VALUENAME: @VALUENAME@ 556s # valuenick: @valuenick@ 556s # valuenum: @valuenum@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-production ***/ 556s # 556s # /*** BEGIN value-tail ***/ 556s # value-tail 556s # EnumName: @EnumName@ 556s # enum_name: @enum_name@ 556s # ENUMNAME: @ENUMNAME@ 556s # ENUMSHORT: @ENUMSHORT@ 556s # ENUMPREFIX: @ENUMPREFIX@ 556s # enumsince: @enumsince@ 556s # type: @type@ 556s # Type: @Type@ 556s # TYPE: @TYPE@ 556s # /*** END value-tail ***/ 556s # 556s # /*** BEGIN comment ***/ 556s # comment 556s # comment: @comment@ 556s # /*** END comment ***/ 556s # 556s # /*** BEGIN file-tail ***/ 556s # file-tail 556s # /*** END file-tail ***/ 556s # 556s # Response file contains: --template /tmp/tmp4jph7bft/tmpebmg4zvu.template /tmp/tmp4jph7bft/tmp7kzo6ukj.h 556s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp4jph7bft/tmpa9kka61j'] 556s # Return code: 0 556s # Output: 556s # comment 556s # 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. 556s # 556s # 556s # file-header 556s # file-production 556s # filename: /tmp/tmp4jph7bft/tmp7kzo6ukj.h 556s # basename: tmp7kzo6ukj.h 556s # enumeration-production 556s # EnumName: SomeEnumIdentifier 556s # enum_name: some_enum_identifier 556s # ENUMNAME: SOME_ENUM_IDENTIFIER 556s # ENUMSHORT: ENUM_IDENTIFIER 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-header 556s # EnumName: SomeEnumIdentifier 556s # enum_name: some_enum_identifier 556s # ENUMNAME: SOME_ENUM_IDENTIFIER 556s # ENUMSHORT: ENUM_IDENTIFIER 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-production 556s # VALUENAME: ENUM_VALUE 556s # valuenick: value 556s # valuenum: 0 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # value-tail 556s # EnumName: SomeEnumIdentifier 556s # enum_name: some_enum_identifier 556s # ENUMNAME: SOME_ENUM_IDENTIFIER 556s # ENUMSHORT: ENUM_IDENTIFIER 556s # ENUMPREFIX: SOME 556s # enumsince: 556s # type: enum 556s # Type: Enum 556s # TYPE: ENUM 556s # file-tail 556s # 556s # comment 556s # comment: Generated data ends here 556s # Error: 557s ok 26 __main__.TestRspMkenums.test_enum_private_public 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmpso5akpxx 557s # rspfile: True 557s # /tmp/tmpso5akpxx/tmp33p_524h.h: 557s # typedef enum { 557s # ENUM_VALUE_PUBLIC1, 557s # /*< private >*/ 557s # ENUM_VALUE_PRIVATE, 557s # } SomeEnumA 557s # 557s # /tmp/tmpso5akpxx/tmp1c3d_f4k.template: 557s # /*** BEGIN file-header ***/ 557s # file-header 557s # /*** END file-header ***/ 557s # 557s # /*** BEGIN file-production ***/ 557s # file-production 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-production ***/ 557s # 557s # /*** BEGIN enumeration-production ***/ 557s # enumeration-production 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END enumeration-production ***/ 557s # 557s # /*** BEGIN value-header ***/ 557s # value-header 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-header ***/ 557s # 557s # /*** BEGIN value-production ***/ 557s # value-production 557s # VALUENAME: @VALUENAME@ 557s # valuenick: @valuenick@ 557s # valuenum: @valuenum@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-production ***/ 557s # 557s # /*** BEGIN value-tail ***/ 557s # value-tail 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-tail ***/ 557s # 557s # /*** BEGIN comment ***/ 557s # comment 557s # comment: @comment@ 557s # /*** END comment ***/ 557s # 557s # /*** BEGIN file-tail ***/ 557s # file-tail 557s # /*** END file-tail ***/ 557s # 557s # Response file contains: --template /tmp/tmpso5akpxx/tmp1c3d_f4k.template /tmp/tmpso5akpxx/tmp33p_524h.h 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpso5akpxx/tmpsz3r0mb7'] 557s # Return code: 0 557s # Output: 557s # comment 557s # 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. 557s # 557s # 557s # file-header 557s # file-production 557s # filename: /tmp/tmpso5akpxx/tmp33p_524h.h 557s # basename: tmp33p_524h.h 557s # enumeration-production 557s # EnumName: SomeEnumA 557s # enum_name: some_enum_a 557s # ENUMNAME: SOME_ENUM_A 557s # ENUMSHORT: ENUM_A 557s # ENUMPREFIX: SOME 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-header 557s # EnumName: SomeEnumA 557s # enum_name: some_enum_a 557s # ENUMNAME: SOME_ENUM_A 557s # ENUMSHORT: ENUM_A 557s # ENUMPREFIX: SOME 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-production 557s # VALUENAME: ENUM_VALUE_PUBLIC1 557s # valuenick: public1 557s # valuenum: 0 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-tail 557s # EnumName: SomeEnumA 557s # enum_name: some_enum_a 557s # ENUMNAME: SOME_ENUM_A 557s # ENUMSHORT: ENUM_A 557s # ENUMPREFIX: SOME 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # file-tail 557s # 557s # comment 557s # comment: Generated data ends here 557s # Error: 557s # 557s # /tmp/tmpso5akpxx/tmpm5rd39g1.h: 557s # typedef enum { 557s # /*< private >*/ 557s # ENUM_VALUE_PRIVATE, 557s # /*< public >*/ 557s # ENUM_VALUE_PUBLIC2, 557s # } SomeEnumB; 557s # 557s # /tmp/tmpso5akpxx/tmpg47zjyil.template: 557s # /*** BEGIN file-header ***/ 557s # file-header 557s # /*** END file-header ***/ 557s # 557s # /*** BEGIN file-production ***/ 557s # file-production 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-production ***/ 557s # 557s # /*** BEGIN enumeration-production ***/ 557s # enumeration-production 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END enumeration-production ***/ 557s # 557s # /*** BEGIN value-header ***/ 557s # value-header 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-header ***/ 557s # 557s # /*** BEGIN value-production ***/ 557s # value-production 557s # VALUENAME: @VALUENAME@ 557s # valuenick: @valuenick@ 557s # valuenum: @valuenum@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-production ***/ 557s # 557s # /*** BEGIN value-tail ***/ 557s # value-tail 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-tail ***/ 557s # 557s # /*** BEGIN comment ***/ 557s # comment 557s # comment: @comment@ 557s # /*** END comment ***/ 557s # 557s # /*** BEGIN file-tail ***/ 557s # file-tail 557s # /*** END file-tail ***/ 557s # 557s # Response file contains: --template /tmp/tmpso5akpxx/tmpg47zjyil.template /tmp/tmpso5akpxx/tmpm5rd39g1.h 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpso5akpxx/tmps8t1cly6'] 557s # Return code: 0 557s # Output: 557s # comment 557s # 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. 557s # 557s # 557s # file-header 557s # file-production 557s # filename: /tmp/tmpso5akpxx/tmpm5rd39g1.h 557s # basename: tmpm5rd39g1.h 557s # enumeration-production 557s # EnumName: SomeEnumB 557s # enum_name: some_enum_b 557s # ENUMNAME: SOME_ENUM_B 557s # ENUMSHORT: ENUM_B 557s # ENUMPREFIX: SOME 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-header 557s # EnumName: SomeEnumB 557s # enum_name: some_enum_b 557s # ENUMNAME: SOME_ENUM_B 557s # ENUMSHORT: ENUM_B 557s # ENUMPREFIX: SOME 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-production 557s # VALUENAME: ENUM_VALUE_PUBLIC2 557s # valuenick: public2 557s # valuenum: 1 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-tail 557s # EnumName: SomeEnumB 557s # enum_name: some_enum_b 557s # ENUMNAME: SOME_ENUM_B 557s # ENUMSHORT: ENUM_B 557s # ENUMPREFIX: SOME 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # file-tail 557s # 557s # comment 557s # comment: Generated data ends here 557s # Error: 557s ok 27 __main__.TestRspMkenums.test_enum_symbolic_expression 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmph1whuihb 557s # rspfile: True 557s # /tmp/tmph1whuihb/tmpkxeyfzjq.h: 557s # typedef enum { 557s # /*< private >*/ 557s # ENUM_VALUE_PRIVATE = 5, 557s # /*< public >*/ 557s # ENUM_VALUE_PUBLIC = ENUM_VALUE_PRIVATE + 2, 557s # } TestSymbolicEnum; 557s # 557s # /tmp/tmph1whuihb/tmpkpyzov5m.template: 557s # /*** BEGIN file-header ***/ 557s # file-header 557s # /*** END file-header ***/ 557s # 557s # /*** BEGIN file-production ***/ 557s # file-production 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-production ***/ 557s # 557s # /*** BEGIN enumeration-production ***/ 557s # enumeration-production 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END enumeration-production ***/ 557s # 557s # /*** BEGIN value-header ***/ 557s # value-header 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-header ***/ 557s # 557s # /*** BEGIN value-production ***/ 557s # value-production 557s # VALUENAME: @VALUENAME@ 557s # valuenick: @valuenick@ 557s # valuenum: @valuenum@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-production ***/ 557s # 557s # /*** BEGIN value-tail ***/ 557s # value-tail 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-tail ***/ 557s # 557s # /*** BEGIN comment ***/ 557s # comment 557s # comment: @comment@ 557s # /*** END comment ***/ 557s # 557s # /*** BEGIN file-tail ***/ 557s # file-tail 557s # /*** END file-tail ***/ 557s # 557s # Response file contains: --template /tmp/tmph1whuihb/tmpkpyzov5m.template /tmp/tmph1whuihb/tmpkxeyfzjq.h 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmph1whuihb/tmp7uc_9uwu'] 557s # Return code: 0 557s # Output: 557s # comment 557s # 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. 557s # 557s # 557s # file-header 557s # file-production 557s # filename: /tmp/tmph1whuihb/tmpkxeyfzjq.h 557s # basename: tmpkxeyfzjq.h 557s # enumeration-production 557s # EnumName: TestSymbolicEnum 557s # enum_name: test_symbolic_enum 557s # ENUMNAME: TEST_SYMBOLIC_ENUM 557s # ENUMSHORT: SYMBOLIC_ENUM 557s # ENUMPREFIX: TEST 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-header 557s # EnumName: TestSymbolicEnum 557s # enum_name: test_symbolic_enum 557s # ENUMNAME: TEST_SYMBOLIC_ENUM 557s # ENUMSHORT: SYMBOLIC_ENUM 557s # ENUMPREFIX: TEST 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-production 557s # VALUENAME: ENUM_VALUE_PUBLIC 557s # valuenick: public 557s # valuenum: 7 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-tail 557s # EnumName: TestSymbolicEnum 557s # enum_name: test_symbolic_enum 557s # ENUMNAME: TEST_SYMBOLIC_ENUM 557s # ENUMSHORT: SYMBOLIC_ENUM 557s # ENUMPREFIX: TEST 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # file-tail 557s # 557s # comment 557s # comment: Generated data ends here 557s # Error: 557s ok 28 __main__.TestRspMkenums.test_filename_basename_in_fhead_ftail 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmpmjd__nmr 557s # rspfile: True 557s # /tmp/tmpmjd__nmr/tmpd0w619ih.template: 557s # /*** BEGIN file-header ***/ 557s # file-header 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-header ***/ 557s # 557s # /*** BEGIN comment ***/ 557s # comment 557s # comment: @comment@ 557s # /*** END comment ***/ 557s # 557s # /*** BEGIN file-tail ***/ 557s # file-tail 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-tail ***/ 557s # Response file contains: --template /tmp/tmpmjd__nmr/tmpd0w619ih.template 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpmjd__nmr/tmp_gnnul50'] 557s # Return code: 0 557s # Output: 557s # comment 557s # 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. 557s # 557s # 557s # file-header 557s # filename: @filename@ 557s # basename: @basename@ 557s # file-tail 557s # filename: @filename@ 557s # basename: @basename@ 557s # 557s # comment 557s # comment: Generated data ends here 557s # Error: 557s # WARNING: @filename@ used in file-header section. 557s # WARNING: @basename@ used in file-header section. 557s # WARNING: @filename@ used in file-tail section. 557s # WARNING: @basename@ used in file-tail section. 557s ok 29 __main__.TestRspMkenums.test_help 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmpflqvrh_d 557s # rspfile: True 557s # Response file contains: --help 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpflqvrh_d/tmpd_gqjcso'] 557s # Return code: 0 557s # Output: 557s # usage: glib-mkenums [-h] [--identifier-prefix IDPREFIX] 557s # [--symbol-prefix SYMPREFIX] [--fhead FHEAD] 557s # [--ftail FTAIL] [--fprod FPROD] [--eprod EPROD] 557s # [--vhead VHEAD] [--vprod VPROD] [--vtail VTAIL] 557s # [--comments COMMENT_TMPL] [--template TEMPLATE] 557s # [--output OUTPUT] [--version] 557s # [args ...] 557s # 557s # positional arguments: 557s # args One or more input files, or a single argument 557s # @rspfile_path pointing to a file that contains the 557s # actual arguments 557s # 557s # options: 557s # -h, --help show this help message and exit 557s # --identifier-prefix IDPREFIX 557s # Identifier prefix 557s # --symbol-prefix SYMPREFIX 557s # Symbol prefix 557s # --fhead FHEAD Output file header 557s # --ftail FTAIL Output file footer 557s # --fprod FPROD Put out TEXT every time a new input file is being 557s # processed. 557s # --eprod EPROD Per enum text, produced prior to value iterations 557s # --vhead VHEAD Value header, produced before iterating over enum 557s # values 557s # --vprod VPROD Value text, produced for each enum value. 557s # --vtail VTAIL Value tail, produced after iterating over enum values 557s # --comments COMMENT_TMPL 557s # Comment structure 557s # --template TEMPLATE Template file 557s # --output OUTPUT 557s # --version, -v Print version information 557s # 557s # Production text substitutions: 557s # @EnumName@ PrefixTheXEnum 557s # @enum_name@ prefix_the_xenum 557s # @ENUMNAME@ PREFIX_THE_XENUM 557s # @ENUMSHORT@ THE_XENUM 557s # @ENUMPREFIX@ PREFIX 557s # @enumsince@ the user-provided since value given 557s # @VALUENAME@ PREFIX_THE_XVALUE 557s # @valuenick@ the-xvalue 557s # @valuenum@ the integer value (limited support, Since: 2.26) 557s # @type@ either enum or flags 557s # @Type@ either Enum or Flags 557s # @TYPE@ either ENUM or FLAGS 557s # @filename@ name of current input file 557s # @basename@ base name of the current input file (Since: 2.22) 557s # Error: 557s ok 30 __main__.TestRspMkenums.test_no_args 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmpnpyxsn20 557s # rspfile: True 557s # Response file contains: 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpnpyxsn20/tmpxab6eoas'] 557s # Return code: 0 557s # Output: 557s # /* 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. */ 557s # 557s # 557s # /* Generated data ends here */ 557s # Error: 557s ok 31 __main__.TestRspMkenums.test_no_headers 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmp9o85nl6o 557s # rspfile: True 557s # /tmp/tmp9o85nl6o/tmphn1lqc86.template: 557s # /*** BEGIN file-header ***/ 557s # file-header 557s # /*** END file-header ***/ 557s # 557s # /*** BEGIN file-production ***/ 557s # file-production 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-production ***/ 557s # 557s # /*** BEGIN enumeration-production ***/ 557s # enumeration-production 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END enumeration-production ***/ 557s # 557s # /*** BEGIN value-header ***/ 557s # value-header 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-header ***/ 557s # 557s # /*** BEGIN value-production ***/ 557s # value-production 557s # VALUENAME: @VALUENAME@ 557s # valuenick: @valuenick@ 557s # valuenum: @valuenum@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-production ***/ 557s # 557s # /*** BEGIN value-tail ***/ 557s # value-tail 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-tail ***/ 557s # 557s # /*** BEGIN comment ***/ 557s # comment 557s # comment: @comment@ 557s # /*** END comment ***/ 557s # 557s # /*** BEGIN file-tail ***/ 557s # file-tail 557s # /*** END file-tail ***/ 557s # 557s # Response file contains: --template /tmp/tmp9o85nl6o/tmphn1lqc86.template 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp9o85nl6o/tmpoa_2kqqd'] 557s # Return code: 0 557s # Output: 557s # comment 557s # 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. 557s # 557s # 557s # file-header 557s # file-tail 557s # 557s # comment 557s # comment: Generated data ends here 557s # Error: 557s ok 32 __main__.TestRspMkenums.test_no_nick 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmpm4uxfhbv 557s # rspfile: True 557s # /tmp/tmpm4uxfhbv/tmp_a7q_v_y.h: 557s # typedef enum { 557s # GEGL_SAMPLER_NEAREST = 0, /*< desc="nearest" >*/ 557s # } GeglSamplerType; 557s # 557s # /tmp/tmpm4uxfhbv/tmpjvpxol9m.template: 557s # /*** BEGIN file-header ***/ 557s # file-header 557s # /*** END file-header ***/ 557s # 557s # /*** BEGIN file-production ***/ 557s # file-production 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-production ***/ 557s # 557s # /*** BEGIN enumeration-production ***/ 557s # enumeration-production 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END enumeration-production ***/ 557s # 557s # /*** BEGIN value-header ***/ 557s # value-header 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-header ***/ 557s # 557s # /*** BEGIN value-production ***/ 557s # value-production 557s # VALUENAME: @VALUENAME@ 557s # valuenick: @valuenick@ 557s # valuenum: @valuenum@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-production ***/ 557s # 557s # /*** BEGIN value-tail ***/ 557s # value-tail 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-tail ***/ 557s # 557s # /*** BEGIN comment ***/ 557s # comment 557s # comment: @comment@ 557s # /*** END comment ***/ 557s # 557s # /*** BEGIN file-tail ***/ 557s # file-tail 557s # /*** END file-tail ***/ 557s # 557s # Response file contains: --template /tmp/tmpm4uxfhbv/tmpjvpxol9m.template /tmp/tmpm4uxfhbv/tmp_a7q_v_y.h 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpm4uxfhbv/tmpyqyw4i8f'] 557s # Return code: 0 557s # Output: 557s # comment 557s # 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. 557s # 557s # 557s # file-header 557s # file-production 557s # filename: /tmp/tmpm4uxfhbv/tmp_a7q_v_y.h 557s # basename: tmp_a7q_v_y.h 557s # enumeration-production 557s # EnumName: GeglSamplerType 557s # enum_name: gegl_sampler_type 557s # ENUMNAME: GEGL_SAMPLER_TYPE 557s # ENUMSHORT: SAMPLER_TYPE 557s # ENUMPREFIX: GEGL 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-header 557s # EnumName: GeglSamplerType 557s # enum_name: gegl_sampler_type 557s # ENUMNAME: GEGL_SAMPLER_TYPE 557s # ENUMSHORT: SAMPLER_TYPE 557s # ENUMPREFIX: GEGL 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-production 557s # VALUENAME: GEGL_SAMPLER_NEAREST 557s # valuenick: nearest 557s # valuenum: 0 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-tail 557s # EnumName: GeglSamplerType 557s # enum_name: gegl_sampler_type 557s # ENUMNAME: GEGL_SAMPLER_TYPE 557s # ENUMSHORT: SAMPLER_TYPE 557s # ENUMPREFIX: GEGL 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # file-tail 557s # 557s # comment 557s # comment: Generated data ends here 557s # Error: 557s ok 33 __main__.TestRspMkenums.test_non_utf8_encoding 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmpgvrvvx9p 557s # rspfile: True 557s # /tmp/tmpgvrvvx9p/tmpc_7vk5y9.h: 557s # /* Copyright © La Peña */ 557s # typedef enum { 557s # ENUM_VALUE 557s # } SomeEnumIdentifier; 557s # 557s # /tmp/tmpgvrvvx9p/tmp8ug5y9py.template: 557s # /*** BEGIN file-header ***/ 557s # file-header 557s # /*** END file-header ***/ 557s # 557s # /*** BEGIN file-production ***/ 557s # file-production 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-production ***/ 557s # 557s # /*** BEGIN enumeration-production ***/ 557s # enumeration-production 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END enumeration-production ***/ 557s # 557s # /*** BEGIN value-header ***/ 557s # value-header 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-header ***/ 557s # 557s # /*** BEGIN value-production ***/ 557s # value-production 557s # VALUENAME: @VALUENAME@ 557s # valuenick: @valuenick@ 557s # valuenum: @valuenum@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-production ***/ 557s # 557s # /*** BEGIN value-tail ***/ 557s # value-tail 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-tail ***/ 557s # 557s # /*** BEGIN comment ***/ 557s # comment 557s # comment: @comment@ 557s # /*** END comment ***/ 557s # 557s # /*** BEGIN file-tail ***/ 557s # file-tail 557s # /*** END file-tail ***/ 557s # 557s # Response file contains: --template /tmp/tmpgvrvvx9p/tmp8ug5y9py.template /tmp/tmpgvrvvx9p/tmpc_7vk5y9.h 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpgvrvvx9p/tmp073b8i9v'] 557s # Return code: 0 557s # Output: 557s # comment 557s # 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. 557s # 557s # 557s # file-header 557s # file-production 557s # filename: /tmp/tmpgvrvvx9p/tmpc_7vk5y9.h 557s # basename: tmpc_7vk5y9.h 557s # enumeration-production 557s # EnumName: SomeEnumIdentifier 557s # enum_name: some_enum_identifier 557s # ENUMNAME: SOME_ENUM_IDENTIFIER 557s # ENUMSHORT: ENUM_IDENTIFIER 557s # ENUMPREFIX: SOME 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-header 557s # EnumName: SomeEnumIdentifier 557s # enum_name: some_enum_identifier 557s # ENUMNAME: SOME_ENUM_IDENTIFIER 557s # ENUMSHORT: ENUM_IDENTIFIER 557s # ENUMPREFIX: SOME 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-production 557s # VALUENAME: ENUM_VALUE 557s # valuenick: value 557s # valuenum: 0 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-tail 557s # EnumName: SomeEnumIdentifier 557s # enum_name: some_enum_identifier 557s # ENUMNAME: SOME_ENUM_IDENTIFIER 557s # ENUMSHORT: ENUM_IDENTIFIER 557s # ENUMPREFIX: SOME 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # file-tail 557s # 557s # comment 557s # comment: Generated data ends here 557s # Error: 557s # WARNING: UnicodeWarning: invalid start byte at 22 (b'yright \xa9 La Pe\xf1') 557s # WARNING: UnicodeWarning: invalid continuation byte at 29 (b'\xa9 La Pe\xf1a */\n ') 557s ok 34 __main__.TestRspMkenums.test_reproducible 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmp0ti982yr 557s # rspfile: True 557s # /tmp/tmp0ti982yr/tmpyqw_0fzc.template: template 557s # Response file contains: --template /tmp/tmp0ti982yr/tmpyqw_0fzc.template /tmp/tmp0ti982yr/tmpqabf57nz1.h /tmp/tmp0ti982yr/tmp6p99aof72.h 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp0ti982yr/tmpf8z9keag'] 557s # Return code: 0 557s # Output: 557s # /* 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. */ 557s # 557s # 557s # /* Generated data ends here */ 557s # Error: 557s # 557s # /tmp/tmp0ti982yr/tmpve1y0pds.template: template 557s # Response file contains: --template /tmp/tmp0ti982yr/tmpve1y0pds.template /tmp/tmp0ti982yr/tmp6p99aof72.h /tmp/tmp0ti982yr/tmpqabf57nz1.h 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmp0ti982yr/tmpv1rg8emp'] 557s # Return code: 0 557s # Output: 557s # /* 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. */ 557s # 557s # 557s # /* Generated data ends here */ 557s # Error: 557s ok 35 __main__.TestRspMkenums.test_since 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmptlg79kck 557s # rspfile: True 557s # /tmp/tmptlg79kck/tmpmaqh7njj.h: 557s # typedef enum { /*< since=1.0 >*/ 557s # QMI_WMS_MESSAGE_PROTOCOL_CDMA = 0, 557s # } QmiWmsMessageProtocol; 557s # 557s # /tmp/tmptlg79kck/tmprn6g040e.template: 557s # /*** BEGIN file-header ***/ 557s # file-header 557s # /*** END file-header ***/ 557s # 557s # /*** BEGIN file-production ***/ 557s # file-production 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-production ***/ 557s # 557s # /*** BEGIN enumeration-production ***/ 557s # enumeration-production 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END enumeration-production ***/ 557s # 557s # /*** BEGIN value-header ***/ 557s # value-header 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-header ***/ 557s # 557s # /*** BEGIN value-production ***/ 557s # value-production 557s # VALUENAME: @VALUENAME@ 557s # valuenick: @valuenick@ 557s # valuenum: @valuenum@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-production ***/ 557s # 557s # /*** BEGIN value-tail ***/ 557s # value-tail 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-tail ***/ 557s # 557s # /*** BEGIN comment ***/ 557s # comment 557s # comment: @comment@ 557s # /*** END comment ***/ 557s # 557s # /*** BEGIN file-tail ***/ 557s # file-tail 557s # /*** END file-tail ***/ 557s # 557s # Response file contains: --template /tmp/tmptlg79kck/tmprn6g040e.template /tmp/tmptlg79kck/tmpmaqh7njj.h 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmptlg79kck/tmpuun4cy4m'] 557s # Return code: 0 557s # Output: 557s # comment 557s # 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. 557s # 557s # 557s # file-header 557s # file-production 557s # filename: /tmp/tmptlg79kck/tmpmaqh7njj.h 557s # basename: tmpmaqh7njj.h 557s # enumeration-production 557s # EnumName: QmiWmsMessageProtocol 557s # enum_name: qmi_wms_message_protocol 557s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 557s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 557s # ENUMPREFIX: QMI 557s # enumsince: 1.0 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-header 557s # EnumName: QmiWmsMessageProtocol 557s # enum_name: qmi_wms_message_protocol 557s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 557s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 557s # ENUMPREFIX: QMI 557s # enumsince: 1.0 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-production 557s # VALUENAME: QMI_WMS_MESSAGE_PROTOCOL_CDMA 557s # valuenick: cdma 557s # valuenum: 0 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-tail 557s # EnumName: QmiWmsMessageProtocol 557s # enum_name: qmi_wms_message_protocol 557s # ENUMNAME: QMI_WMS_MESSAGE_PROTOCOL 557s # ENUMSHORT: WMS_MESSAGE_PROTOCOL 557s # ENUMPREFIX: QMI 557s # enumsince: 1.0 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # file-tail 557s # 557s # comment 557s # comment: Generated data ends here 557s # Error: 557s ok 36 __main__.TestRspMkenums.test_with_double_quotes 557s # glib-mkenums: /usr/bin/glib-mkenums 557s # tmpdir: /tmp/tmpwlkkl3kr 557s # rspfile: True 557s # /tmp/tmpwlkkl3kr/tmp6byp0pta.h: 557s # typedef enum { 557s # FOO_VALUE /*< nick="eek, a comma" >*/ 557s # } Foo; 557s # 557s # /tmp/tmpwlkkl3kr/tmpzaelm4sy.template: 557s # /*** BEGIN file-header ***/ 557s # file-header 557s # /*** END file-header ***/ 557s # 557s # /*** BEGIN file-production ***/ 557s # file-production 557s # filename: @filename@ 557s # basename: @basename@ 557s # /*** END file-production ***/ 557s # 557s # /*** BEGIN enumeration-production ***/ 557s # enumeration-production 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END enumeration-production ***/ 557s # 557s # /*** BEGIN value-header ***/ 557s # value-header 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-header ***/ 557s # 557s # /*** BEGIN value-production ***/ 557s # value-production 557s # VALUENAME: @VALUENAME@ 557s # valuenick: @valuenick@ 557s # valuenum: @valuenum@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-production ***/ 557s # 557s # /*** BEGIN value-tail ***/ 557s # value-tail 557s # EnumName: @EnumName@ 557s # enum_name: @enum_name@ 557s # ENUMNAME: @ENUMNAME@ 557s # ENUMSHORT: @ENUMSHORT@ 557s # ENUMPREFIX: @ENUMPREFIX@ 557s # enumsince: @enumsince@ 557s # type: @type@ 557s # Type: @Type@ 557s # TYPE: @TYPE@ 557s # /*** END value-tail ***/ 557s # 557s # /*** BEGIN comment ***/ 557s # comment 557s # comment: @comment@ 557s # /*** END comment ***/ 557s # 557s # /*** BEGIN file-tail ***/ 557s # file-tail 557s # /*** END file-tail ***/ 557s # 557s # Response file contains: --template /tmp/tmpwlkkl3kr/tmpzaelm4sy.template /tmp/tmpwlkkl3kr/tmp6byp0pta.h 557s # Running: ['/usr/bin/glib-mkenums', '@/tmp/tmpwlkkl3kr/tmpkmpzm8u3'] 557s # Return code: 0 557s # Output: 557s # comment 557s # 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. 557s # 557s # 557s # file-header 557s # file-production 557s # filename: /tmp/tmpwlkkl3kr/tmp6byp0pta.h 557s # basename: tmp6byp0pta.h 557s # enumeration-production 557s # EnumName: Foo 557s # enum_name: foo_ 557s # ENUMNAME: FOO_ 557s # ENUMSHORT: 557s # ENUMPREFIX: FOO 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-header 557s # EnumName: Foo 557s # enum_name: foo_ 557s # ENUMNAME: FOO_ 557s # ENUMSHORT: 557s # ENUMPREFIX: FOO 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-production 557s # VALUENAME: FOO_VALUE 557s # valuenick: eek, a comma 557s # valuenum: 0 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # value-tail 557s # EnumName: Foo 557s # enum_name: foo_ 557s # ENUMNAME: FOO_ 557s # ENUMSHORT: 557s # ENUMPREFIX: FOO 557s # enumsince: 557s # type: enum 557s # Type: Enum 557s # TYPE: ENUM 557s # file-tail 557s # 557s # comment 557s # comment: Generated data ends here 557s # Error: 557s 1..36 557s ok - glib/mkenums.py.test 557s # Running test: glib/gsubprocess.test 557s TAP version 14 557s # random seed: R02Sbebe43f9c042286a337b18cf00b2c29e 557s 1..84 557s # Start of gsubprocess tests 557s ok 1 /gsubprocess/noop 557s ok 2 /gsubprocess/noop-all-to-null 557s ok 3 /gsubprocess/noop-no-wait 557s ok 4 /gsubprocess/noop-stdin-inherit 557s ok 5 /gsubprocess/search-path 557s ok 6 /gsubprocess/search-path-from-envp 560s ok 7 /gsubprocess/signal 560s # slow test /gsubprocess/signal executed in 2.91 secs 560s # Executing: glib/gsubprocess.test 560s ok 8 /gsubprocess/exit1 560s ok 9 /gsubprocess/echo1 560s ok 10 /gsubprocess/echo-merged 560s ok 11 /gsubprocess/cat-utf8 561s ok 12 /gsubprocess/cat-eof 561s # slow test /gsubprocess/cat-eof executed in 1.00 secs 564s ok 13 /gsubprocess/multi1 564s # slow test /gsubprocess/multi1 executed in 3.01 secs 564s ok 14 /gsubprocess/communicate 565s # Executing: glib/gsubprocess.test 567s ok 15 /gsubprocess/terminate 567s # slow test /gsubprocess/terminate executed in 2.97 secs 567s ok 16 /gsubprocess/fail-initialization 567s ok 17 /gsubprocess/env 567s ok 18 /gsubprocess/cwd 567s ok 19 /gsubprocess/launcher-close 567s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 567s ok 20 /gsubprocess/stdout-file 567s ok 21 /gsubprocess/stdout-fd 567s ok 22 /gsubprocess/child-setup 567s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 567s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 567s ok 23 /gsubprocess/launcher-environment 567s # Start of exit1 tests 567s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=786456 567s ok 24 /gsubprocess/exit1/cancel 567s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=786456 567s ok 25 /gsubprocess/exit1/cancel_in_cb 567s # End of exit1 tests 567s # Start of communicate tests 567s ok 26 /gsubprocess/communicate/cancelled 567s ok 27 /gsubprocess/communicate/async 567s ok 28 /gsubprocess/communicate/utf8 567s # hello world 567s ok 29 /gsubprocess/communicate/no-pipes 567s ok 30 /gsubprocess/communicate/separate-stderr 567s ok 31 /gsubprocess/communicate/stdout-only 567s # hello world 567s ok 32 /gsubprocess/communicate/stderr-only 567s ok 33 /gsubprocess/communicate/stdout-silence 567s ok 34 /gsubprocess/communicate/nothing 567s # Start of async tests 567s ok 35 /gsubprocess/communicate/async/cancelled 567s # hello world 567s ok 36 /gsubprocess/communicate/async/no-pipes 567s ok 37 /gsubprocess/communicate/async/separate-stderr 567s ok 38 /gsubprocess/communicate/async/stdout-only 567s # hello world 567s ok 39 /gsubprocess/communicate/async/stderr-only 567s ok 40 /gsubprocess/communicate/async/stdout-silence 567s # Start of cancelled tests 567s ok 41 /gsubprocess/communicate/async/cancelled/no-pipes 567s ok 42 /gsubprocess/communicate/async/cancelled/separate-stderr 567s ok 43 /gsubprocess/communicate/async/cancelled/stdout-only 567s ok 44 /gsubprocess/communicate/async/cancelled/stderr-only 567s ok 45 /gsubprocess/communicate/async/cancelled/stdout-silence 567s # End of cancelled tests 567s # End of async tests 567s # Start of utf8 tests 567s ok 46 /gsubprocess/communicate/utf8/cancelled 567s ok 47 /gsubprocess/communicate/utf8/async 567s # hello world 567s ok 48 /gsubprocess/communicate/utf8/no-pipes 567s ok 49 /gsubprocess/communicate/utf8/separate-stderr 567s ok 50 /gsubprocess/communicate/utf8/stdout-only 567s # hello world 567s ok 51 /gsubprocess/communicate/utf8/stderr-only 567s ok 52 /gsubprocess/communicate/utf8/stdout-silence 567s ok 53 /gsubprocess/communicate/utf8/invalid 567s # Start of async tests 567s ok 54 /gsubprocess/communicate/utf8/async/cancelled 567s # hello world 567s ok 55 /gsubprocess/communicate/utf8/async/no-pipes 567s ok 56 /gsubprocess/communicate/utf8/async/separate-stderr 567s ok 57 /gsubprocess/communicate/utf8/async/stdout-only 567s # hello world 567s ok 58 /gsubprocess/communicate/utf8/async/stderr-only 567s ok 59 /gsubprocess/communicate/utf8/async/stdout-silence 567s ok 60 /gsubprocess/communicate/utf8/async/invalid 567s # Start of cancelled tests 567s ok 61 /gsubprocess/communicate/utf8/async/cancelled/no-pipes 567s ok 62 /gsubprocess/communicate/utf8/async/cancelled/separate-stderr 567s ok 63 /gsubprocess/communicate/utf8/async/cancelled/stdout-only 567s ok 64 /gsubprocess/communicate/utf8/async/cancelled/stderr-only 567s ok 65 /gsubprocess/communicate/utf8/async/cancelled/stdout-silence 567s # End of cancelled tests 567s # End of async tests 567s # Start of cancelled tests 567s ok 66 /gsubprocess/communicate/utf8/cancelled/no-pipes 567s ok 67 /gsubprocess/communicate/utf8/cancelled/separate-stderr 567s ok 68 /gsubprocess/communicate/utf8/cancelled/stdout-only 567s ok 69 /gsubprocess/communicate/utf8/cancelled/stderr-only 567s ok 70 /gsubprocess/communicate/utf8/cancelled/stdout-silence 567s # End of cancelled tests 567s # End of utf8 tests 567s # Start of cancelled tests 567s ok 71 /gsubprocess/communicate/cancelled/no-pipes 567s ok 72 /gsubprocess/communicate/cancelled/separate-stderr 567s ok 73 /gsubprocess/communicate/cancelled/stdout-only 567s ok 74 /gsubprocess/communicate/cancelled/stderr-only 567s ok 75 /gsubprocess/communicate/cancelled/stdout-silence 567s # End of cancelled tests 567s # End of communicate tests 567s # Start of env tests 567s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 567s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 567s ok 76 /gsubprocess/env/inherit 567s # End of env tests 567s # Start of pass-fd tests 567s ok 77 /gsubprocess/pass-fd/basic 567s ok 78 /gsubprocess/pass-fd/empty-child-setup 567s ok 79 /gsubprocess/pass-fd/inherit-fds 567s # End of pass-fd tests 567s # Start of fd-conflation tests 567s ok 80 /gsubprocess/fd-conflation/basic 567s ok 81 /gsubprocess/fd-conflation/empty-child-setup 567s ok 82 /gsubprocess/fd-conflation/inherit-fds 567s ok 83 /gsubprocess/fd-conflation/child-err-report-fd 567s # End of fd-conflation tests 567s # Start of exit-status tests 567s # /gsubprocess/exit-status/trapped summary: Test that exit status is reported correctly for ptrace()d child processes 567s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3433 567s ok 84 /gsubprocess/exit-status/trapped 567s # End of exit-status tests 567s # End of gsubprocess tests 567s ok - glib/gsubprocess.test 567s # Running test: glib/portal-support-env-var.test 567s TAP version 14 567s # random seed: R02Sc8d0fa97dbc98142549a37797ebc2eb2 567s 1..1 567s # Start of portal-support tests 567s ok 1 /portal-support/env-var 567s # End of portal-support tests 567s ok - glib/portal-support-env-var.test 567s # Running test: glib/portal-support-flatpak-none.test 567s TAP version 14 567s ok - glib/portal-support-flatpak-none.test 567s # random seed: R02S55babad5c8fbdf902d2fa56afe8b224e 567s 1..1 567s # Start of portal-support tests 567s # Start of flatpak tests 567s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/home 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/cache 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/system-config1:/tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/system-config2 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/config 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/system-data1:/tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/system-data2 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/data 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/state 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/runtime 567s # Creating .flatpak-info in /tmp/test_portal-support-flatpak-none_LP0152/portal-support/flatpak/none/.dirs/runtime/.flatpak-info 567s ok 1 /portal-support/flatpak/none 567s # End of flatpak tests 567s # End of portal-support tests 567s # Running test: glib/permission.test 567s TAP version 14 567s # random seed: R02S6b8b4dd61cccbef7b1679729d2949ca0 567s 1..1 567s # Start of permission tests 567s ok 1 /permission/simple 567s # End of permission tests 567s ok - glib/permission.test 567s # Running test: glib/proxy-test.test 567s TAP version 14 567s # random seed: R02S48b03d339ce3a5a09c2854d816fd3033 567s 1..11 567s # Start of proxy tests 567s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestProxyResolver) for ?gio-proxy-resolver? 567s ok 1 /proxy/direct_sync 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7830 and GSocketClientAsyncConnectData 0xaf58186d6da0 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d8160 for GSocketClientAsyncConnectData 0xaf58186d6da0 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 567s ok 2 /proxy/direct_async 567s ok 3 /proxy/single_sync 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7cd0 and GSocketClientAsyncConnectData 0xaf58186d6da0 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d8830 for GSocketClientAsyncConnectData 0xaf58186d6da0 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 567s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 567s ok 4 /proxy/single_async 567s ok 5 /proxy/multiple_sync 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7f60 and GSocketClientAsyncConnectData 0xaf58186d7ef0 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d9b90 for GSocketClientAsyncConnectData 0xaf58186d7ef0 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d9b30 for GSocketClientAsyncConnectData 0xaf58186d7ef0 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 567s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 567s ok 6 /proxy/multiple_async 567s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2597 567s ok 7 /proxy/invalid-uris-sync 567s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2597 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7b20 and GSocketClientAsyncConnectData 0xaf58186d9d50 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: Unspecified proxy lookup failure 567s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unspecified proxy lookup failure 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7cd0 and GSocketClientAsyncConnectData 0xaf58186d7ef0 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: Unspecified proxy lookup failure 567s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unspecified proxy lookup failure 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7b20 and GSocketClientAsyncConnectData 0xaf58186d9d50 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d81c0 for GSocketClientAsyncConnectData 0xaf58186d9d50 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7cd0 and GSocketClientAsyncConnectData 0xaf58186d9d50 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d9dc0 for GSocketClientAsyncConnectData 0xaf58186d9d50 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 567s ok 8 /proxy/invalid-uris-async 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7830 and GSocketClientAsyncConnectData 0xaf58186d9d50 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: IPv6 DNS error: Not found 567s # GLib-GIO-DEBUG: IPv4 DNS error: Not found 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: Not found 567s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Not found 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186da3f0 and GSocketClientAsyncConnectData 0xaf58186d80b0 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d9b90 for GSocketClientAsyncConnectData 0xaf58186d80b0 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null) 567s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unsupported protocol 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7b20 and GSocketClientAsyncConnectData 0xaf58186d7ef0 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d9dc0 for GSocketClientAsyncConnectData 0xaf58186d7ef0 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 567s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 567s ok 9 /proxy/dns 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7830 and GSocketClientAsyncConnectData 0xaf58186d7ef0 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d92b0 for GSocketClientAsyncConnectData 0xaf58186d7ef0 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null) 567s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unsupported protocol 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7b20 and GSocketClientAsyncConnectData 0xaf58186d7d90 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d92b0 for GSocketClientAsyncConnectData 0xaf58186d7d90 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 567s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 567s ok - glib/proxy-test.test 567s # Running test: glib/messages-low-memory.py.test 567s # GLib-GIO-DEBUG: g_socket_client_connect_to_uri_async 567s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xaf58186d7830 and GSocketClientAsyncConnectData 0xaf58186d9d50 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 567s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xaf58186d9ad0 for GSocketClientAsyncConnectData 0xaf58186d9d50 567s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 567s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 567s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting proxy connection 567s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 567s # GLib-GIO-DEBUG: GSocketClient: Address enumeration failed: (null) 567s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Unsupported protocol 567s ok 10 /proxy/override 567s ok 11 /proxy/enumerator-ports 567s # End of proxy tests 567s TAP version 13 567s ok 1 __main__.TestMessagesLowMemory.test_message_memory_allocation_failure 567s # messages-low-memory: /usr/libexec/installed-tests/glib/messages-low-memory 567s # tmpdir: /tmp/tmp80_4vg4m 567s # Running: ['/usr/libexec/installed-tests/glib/messages-low-memory'] 567s # Return code: -6 567s # Output: 567s # 567s # Error: 567s # GLib-Message: 18:46:10.239: Simulates a situation in which we were crashing because of low-memory, leading malloc to fail instead of aborting 567s # GLib-Message: 18:46:10.240: bug: https://gitlab.gnome.org/GNOME/glib/-/issues/2753 567s # ../../../glib/gprintf.c:350: failed to allocate memory 567s 1..1 567s ok - glib/messages-low-memory.py.test 567s # Running test: glib/dynamictype.test 567s TAP version 14 567s # random seed: R02S81761f9b627ff448771e2de4284f7fe7 567s 1..2 567s # Start of gobject tests 567s ok 1 /gobject/dynamic-type 567s # Start of dynamic-type tests 567s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/623 567s ok 2 /gobject/dynamic-type/query 567s # End of dynamic-type tests 567s # End of gobject tests 567s ok - glib/dynamictype.test 567s # Running test: glib/gdbus-bz627724.test 567s TAP version 14 567s # random seed: R02Sb8e6a57fc59e8ac361c6f843433a5d6f 567s 1..1 567s # Start of gdbus tests 567s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/home 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/cache 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/system-config1:/tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/system-config2 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/config 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/system-data1:/tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/system-data2 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/data 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/state 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-bz627724_U9OA62/gdbus/bz627724/.dirs/runtime 567s ok - glib/gdbus-bz627724.test 567s # Running test: glib/date.test 567s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 567s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 567s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 567s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 567s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 567s ok 1 /gdbus/bz627724 567s # End of gdbus tests 567s TAP version 14 567s # random seed: R02S04bdcea9f54daa188a9b55cb27707289 567s 1..121 567s # Start of date tests 567s ok 1 /date/basic 567s ok 2 /date/empty 567s ok 3 /date/dmy 567s ok 4 /date/julian 567s ok 5 /date/compare 567s ok 6 /date/dates 567s ok 7 /date/strftime 567s ok 8 /date/two-digit-years 567s ok 9 /date/parse 567s ok 10 /date/parse_locale_change # SKIP locale th_TH not available 567s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=793550 567s ok 11 /date/month_substring 567s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=749206 567s ok 12 /date/month_names # SKIP libc doesn’t support all alternative month names 567s ok 13 /date/clamp 567s ok 14 /date/order 567s ok 15 /date/copy 567s # Vector 0: 0000-00-00, invalid 567s # Vector 1: 0001-01-01, valid 567s # Vector 2: 0000-01-01, invalid 567s # Vector 3: 2000-02-30, invalid 567s # Vector 4: 2000-02-29, valid 567s # Vector 5: 2001-02-29, invalid 567s # Vector 6: 65535-01-01, valid 567s ok 16 /date/valid-dmy 567s # Start of parse tests 567s # Test 0 567s # Test 1 567s ok 17 /date/parse/invalid 567s # End of parse tests 567s # Start of year tests 567s ok 18 /date/year/1 567s ok 19 /date/year/2 567s ok 20 /date/year/3 567s ok 21 /date/year/4 567s ok 22 /date/year/5 567s ok 23 /date/year/6 567s ok 24 /date/year/7 567s ok 25 /date/year/8 567s ok 26 /date/year/9 567s ok 27 /date/year/10 567s ok 28 /date/year/11 567s ok 29 /date/year/12 567s ok 30 /date/year/13 567s ok 31 /date/year/14 567s ok 32 /date/year/98 567s ok 33 /date/year/99 567s ok 34 /date/year/100 567s ok 35 /date/year/101 567s ok 36 /date/year/102 567s ok 37 /date/year/103 567s ok 38 /date/year/397 567s ok 39 /date/year/398 567s ok 40 /date/year/399 567s ok 41 /date/year/400 567s ok 42 /date/year/401 567s ok 43 /date/year/402 567s ok 44 /date/year/403 567s ok 45 /date/year/404 567s ok 46 /date/year/405 567s ok 47 /date/year/406 567s ok 48 /date/year/1598 567s ok 49 /date/year/1599 567s ok 50 /date/year/1600 567s ok 51 /date/year/1601 567s ok 52 /date/year/1602 567s ok 53 /date/year/1650 567s ok 54 /date/year/1651 567s ok 55 /date/year/1897 567s ok 56 /date/year/1898 567s ok 57 /date/year/1899 567s ok 58 /date/year/1900 567s ok 59 /date/year/1901 567s ok 60 /date/year/1902 567s ok 61 /date/year/1903 567s ok 62 /date/year/1961 567s ok 63 /date/year/1962 567s ok 64 /date/year/1963 567s ok 65 /date/year/1964 567s ok 66 /date/year/1965 567s ok 67 /date/year/1967 567s ok 68 /date/year/1968 567s ok 69 /date/year/1969 567s ok 70 /date/year/1970 567s ok 71 /date/year/1971 567s ok 72 /date/year/1972 567s ok 73 /date/year/1973 567s ok 74 /date/year/1974 567s ok 75 /date/year/1975 567s ok 76 /date/year/1976 567s ok 77 /date/year/1977 567s ok 78 /date/year/1978 567s ok 79 /date/year/1979 567s ok 80 /date/year/1980 567s ok 81 /date/year/1981 567s ok 82 /date/year/1982 567s ok 83 /date/year/1983 567s ok 84 /date/year/1984 567s ok 85 /date/year/1985 567s ok 86 /date/year/1986 567s ok 87 /date/year/1987 567s ok 88 /date/year/1988 567s ok 89 /date/year/1989 567s ok 90 /date/year/1990 567s ok 91 /date/year/1991 567s ok 92 /date/year/1992 567s ok 93 /date/year/1993 567s ok 94 /date/year/1994 567s ok 95 /date/year/1995 567s ok 96 /date/year/1996 567s ok 97 /date/year/1997 567s ok 98 /date/year/1998 567s ok 99 /date/year/1999 567s ok 100 /date/year/2000 567s ok 101 /date/year/2001 567s ok 102 /date/year/2002 567s ok 103 /date/year/2003 567s ok 104 /date/year/2004 567s ok 105 /date/year/2005 567s ok 106 /date/year/2006 567s ok 107 /date/year/2007 567s ok 108 /date/year/2008 567s ok 109 /date/year/2009 567s ok 110 /date/year/2010 567s ok 111 /date/year/2011 567s ok 112 /date/year/2012 567s ok 113 /date/year/3000 567s ok 114 /date/year/3001 567s ok 115 /date/year/3002 567s ok 116 /date/year/3998 567s ok 117 /date/year/3999 567s ok 118 /date/year/4000 567s ok 119 /date/year/4001 567s ok 120 /date/year/4002 567s ok 121 /date/year/4003 567s # End of year tests 567s # End of date tests 567s ok - glib/date.test 567s # Running test: glib/defaultiface.test 567s ok - glib/defaultiface.test 567s # Running test: glib/union-info.test 567s TAP version 14 567s # random seed: R02Sf99cab5ce356e8df97b875d3657b0dec 567s 1..2 567s # Start of gobject tests 567s ok 1 /gobject/static-iface 567s ok 2 /gobject/dynamic-iface 567s # End of gobject tests 567s TAP version 14 567s # random seed: R02Safc80a9ad8c339d09311f4828acc6ac0 567s 1..2 567s # Start of union-info tests 567s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_union-info_KCNT52/union-info/basic/.dirs/home 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_union-info_KCNT52/union-info/basic/.dirs/cache 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_union-info_KCNT52/union-info/basic/.dirs/system-config1:/tmp/test_union-info_KCNT52/union-info/basic/.dirs/system-config2 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_union-info_KCNT52/union-info/basic/.dirs/config 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_union-info_KCNT52/union-info/basic/.dirs/system-data1:/tmp/test_union-info_KCNT52/union-info/basic/.dirs/system-data2 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_union-info_KCNT52/union-info/basic/.dirs/data 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_union-info_KCNT52/union-info/basic/.dirs/state 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_union-info_KCNT52/union-info/basic/.dirs/runtime 567s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 567s # /union-info/basic summary: Test basic properties of GIUnionInfo 567s ok - glib/union-info.test 567s # Running test: glib/gdatetime.test 567s ok 1 /union-info/basic 567s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_union-info_KCNT52/union-info/methods/.dirs/home 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_union-info_KCNT52/union-info/methods/.dirs/cache 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_union-info_KCNT52/union-info/methods/.dirs/system-config1:/tmp/test_union-info_KCNT52/union-info/methods/.dirs/system-config2 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_union-info_KCNT52/union-info/methods/.dirs/config 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_union-info_KCNT52/union-info/methods/.dirs/system-data1:/tmp/test_union-info_KCNT52/union-info/methods/.dirs/system-data2 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_union-info_KCNT52/union-info/methods/.dirs/data 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_union-info_KCNT52/union-info/methods/.dirs/state 567s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_union-info_KCNT52/union-info/methods/.dirs/runtime 567s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 567s # /union-info/methods summary: Test retrieving methods from GIUnionInfo 567s ok 2 /union-info/methods 567s # End of union-info tests 567s TAP version 14 567s # random seed: R02S46e0f6dbd5ee1def1e57951ba8ca853d 567s 1..68 567s # Start of GDateTime tests 567s # Bug Reference: http://bugzilla.gnome.org/702674 567s ok 1 /GDateTime/invalid 567s ok 2 /GDateTime/add_days 567s ok 3 /GDateTime/add_full 567s ok 4 /GDateTime/add_hours 567s ok 5 /GDateTime/add_minutes 567s ok 6 /GDateTime/add_months 567s ok 7 /GDateTime/add_seconds 567s ok 8 /GDateTime/add_weeks 567s ok 9 /GDateTime/add_years 567s ok 10 /GDateTime/compare 567s ok 11 /GDateTime/diff 567s ok 12 /GDateTime/equal 567s ok 13 /GDateTime/get_day_of_week 567s ok 14 /GDateTime/get_day_of_month 567s ok 15 /GDateTime/get_day_of_year 567s ok 16 /GDateTime/get_hour 567s ok 17 /GDateTime/get_microsecond 567s ok 18 /GDateTime/get_minute 567s ok 19 /GDateTime/get_month 567s ok 20 /GDateTime/get_second 567s ok 21 /GDateTime/get_utc_offset 567s ok 22 /GDateTime/get_year 567s ok 23 /GDateTime/hash 567s ok 24 /GDateTime/new_from_unix 567s ok 25 /GDateTime/new_from_unix_utc 567s ok 26 /GDateTime/new_from_timeval 567s ok 27 /GDateTime/new_from_timeval_utc 567s ok 28 /GDateTime/new_from_iso8601 567s ok 29 /GDateTime/new_full 567s ok 30 /GDateTime/now 567s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2215 567s ok 31 /GDateTime/test-6-days-until-end-of-the-month 567s # %a -> expected: Sat 567s # %a -> actual: Sat 567s # %A -> expected: Saturday 567s # %A -> actual: Saturday 567s # %b -> expected: Oct 567s # %b -> actual: Oct 567s # %B -> expected: October 567s # %B -> actual: October 567s # %d -> expected: 24 567s # %d -> actual: 24 567s # %d -> expected: 01 567s # %d -> actual: 01 567s # %e -> expected: 24 567s # %e -> actual: 24 567s # %e -> expected:  1 567s # %e -> actual:  1 567s # %f -> expected: 001000 567s # %f -> actual: 001000 567s # %h -> expected: Oct 567s # %h -> actual: Oct 567s # %H -> expected: 00 567s # %H -> actual: 00 567s # %H -> expected: 15 567s # %H -> actual: 15 567s # %I -> expected: 12 567s # %I -> actual: 12 567s # %I -> expected: 12 567s # %I -> actual: 12 567s # %I -> expected: 03 567s # %I -> actual: 03 567s # %j -> expected: 297 567s # %j -> actual: 297 567s # %k -> expected:  0 567s # %k -> actual:  0 567s # %k -> expected: 13 567s # %k -> actual: 13 567s # %l -> expected: 12 567s # %l -> actual: 12 567s # %I -> expected: 12 567s # %I -> actual: 12 567s # %l -> expected:  1 567s # %l -> actual:  1 567s # %l -> expected: 10 567s # %l -> actual: 10 567s # %m -> expected: 10 567s # %m -> actual: 10 567s # %M -> expected: 00 567s # %M -> actual: 00 567s # %p -> expected: AM 567s # %p -> actual: AM 567s # %p -> expected: PM 567s # %p -> actual: PM 567s # %P -> expected: am 567s # %P -> actual: am 567s # %P -> expected: pm 567s # %P -> actual: pm 567s # %r -> expected: 12:00:00 AM 567s # %r -> actual: 12:00:00 AM 567s # %r -> expected: 01:13:13 PM 567s # %r -> actual: 01:13:13 PM 567s # %R -> expected: 00:00 567s # %R -> actual: 00:00 567s # %R -> expected: 13:13 567s # %R -> actual: 13:13 567s # %S -> expected: 00 567s # %S -> actual: 00 567s # %t -> expected: 567s # %t -> actual: 567s # %u -> expected: 6 567s # %u -> actual: 6 567s # %x -> expected: 10/24/09 567s # %x -> actual: 10/24/09 567s # %X -> expected: 00:00:00 567s # %X -> actual: 00:00:00 567s # %X -> expected: 13:14:15 567s # %X -> actual: 13:14:15 567s # %y -> expected: 09 567s # %y -> actual: 09 567s # %Y -> expected: 2009 567s # %Y -> actual: 2009 567s # %% -> expected: % 567s # %% -> actual: % 567s # % -> expected: 567s # % -> actual: 567s # %9 -> expected: (null) 567s # %9 -> actual: (null) 567s # %Z -> expected: UTC 567s # %Z -> actual: UTC 567s # %#Z %Z -> expected: utc UTC 567s # %#Z %Z -> actual: utc UTC 567s ok 32 /GDateTime/printf 568s # %a -> expected: ÅÚ 568s # %a -> actual: ÅÚ 568s # %A -> expected: ÅÚÍËÆü 568s # %A -> actual: ÅÚÍËÆü 568s # %b -> expected: 10·î 568s # %b -> actual: 10·î 568s # %B -> expected: 10·î 568s # %B -> actual: 10·î 568s # %c -> expected: 2009ǯ10·î24Æü 00»þ00ʬ00Éà 568s # %c -> actual: 2009ǯ10·î24Æü 00»þ00ʬ00Éà 568s # %C -> expected: 20 568s # %C -> actual: 20 568s # %d -> expected: 24 568s # %d -> actual: 24 568s # %d -> expected: 01 568s # %d -> actual: 01 568s # %e -> expected: 24 568s # %e -> actual: 24 568s # %h -> expected: 10·î 568s # %h -> actual: 10·î 568s # %H -> expected: 00 568s # %H -> actual: 00 568s # %H -> expected: 15 568s # %H -> actual: 15 568s # %I -> expected: 12 568s # %I -> actual: 12 568s # %I -> expected: 12 568s # %I -> actual: 12 568s # %I -> expected: 03 568s # %I -> actual: 03 568s # %j -> expected: 297 568s # %j -> actual: 297 568s # %k -> expected: ?0 568s # %k -> actual: ?0 568s # %k -> expected: 13 568s # %k -> actual: 13 568s # %l -> expected: 12 568s # %l -> actual: 12 568s # %I -> expected: 12 568s # %I -> actual: 12 568s # %l -> expected: ?1 568s # %l -> actual: ?1 568s # %l -> expected: 10 568s # %l -> actual: 10 568s # %m -> expected: 10 568s # %m -> actual: 10 568s # %M -> expected: 00 568s # %M -> actual: 00 568s # %p -> expected: ¸áÁ° 568s # %p -> actual: ¸áÁ° 568s # %p -> expected: ¸á¸å 568s # %p -> actual: ¸á¸å 568s # %P -> expected: ¸áÁ° 568s # %P -> actual: ¸áÁ° 568s # %P -> expected: ¸á¸å 568s # %P -> actual: ¸á¸å 568s # %r -> expected: ¸áÁ°12»þ00ʬ00Éà 568s # %r -> actual: ¸áÁ°12»þ00ʬ00Éà 568s # %r -> expected: ¸á¸å01»þ13ʬ13Éà 568s # %r -> actual: ¸á¸å01»þ13ʬ13Éà 568s # %R -> expected: 00:00 568s # %R -> actual: 00:00 568s # %R -> expected: 13:13 568s # %R -> actual: 13:13 568s # %S -> expected: 00 568s # %S -> actual: 00 568s # %t -> expected: 568s # %t -> actual: 568s # %u -> expected: 6 568s # %u -> actual: 6 568s # %x -> expected: 2009ǯ10·î24Æü 568s # %x -> actual: 2009ǯ10·î24Æü 568s # %X -> expected: 00»þ00ʬ00Éà 568s # %X -> actual: 00»þ00ʬ00Éà 568s # %X -> expected: 13»þ14ʬ15Éà 568s # %X -> actual: 13»þ14ʬ15Éà 568s # %y -> expected: 09 568s # %y -> actual: 09 568s # %Y -> expected: 2009 568s # %Y -> actual: 2009 568s # %% -> expected: % 568s # %% -> actual: % 568s # % -> expected: 568s # % -> actual: 568s # %9 -> expected: (null) 568s # %9 -> actual: (null) 568s # %Ec -> expected: Ê¿À®21ǯ10·î24Æü 00»þ00ʬ00Éà 568s # %Ec -> actual: Ê¿À®21ǯ10·î24Æü 00»þ00ʬ00Éà 568s # %EC -> expected: Ê¿À® 568s # %EC -> actual: Ê¿À® 568s # %Ex -> expected: Ê¿À®21ǯ10·î24Æü 568s # %Ex -> actual: Ê¿À®21ǯ10·î24Æü 568s # %EX -> expected: 00»þ00ʬ00Éà 568s # %EX -> actual: 00»þ00ʬ00Éà 568s # %Ey -> expected: 21 568s # %Ey -> actual: 21 568s # %EY -> expected: Ê¿À®21ǯ 568s # %EY -> actual: Ê¿À®21ǯ 568s ok 33 /GDateTime/non_utf8_printf 568s # ???? -> expected: ???? 568s # ???? -> actual: ???? 568s # %H?%M -> expected: 23?15 568s # %H?%M -> actual: 23?15 568s # %H?%M -> expected: 23?15 568s # %H?%M -> actual: 23?15 568s ok 34 /GDateTime/format_unrepresentable 568s ok 35 /GDateTime/format_iso8601 568s ok 36 /GDateTime/strftime 568s # %d -> expected: 01 568s # %d -> actual: 01 568s # %_d -> expected: 1 568s # %_d -> actual: 1 568s # %-d -> expected: 1 568s # %-d -> actual: 1 568s # %0d -> expected: 01 568s # %0d -> actual: 01 568s # %d -> expected: 21 568s # %d -> actual: 21 568s # %_d -> expected: 21 568s # %_d -> actual: 21 568s # %-d -> expected: 21 568s # %-d -> actual: 21 568s # %0d -> expected: 21 568s # %0d -> actual: 21 568s # %e -> expected:  1 568s # %e -> actual:  1 568s # %_e -> expected: 1 568s # %_e -> actual: 1 568s # %-e -> expected: 1 568s # %-e -> actual: 1 568s # %0e -> expected: 01 568s # %0e -> actual: 01 568s # %e -> expected: 21 568s # %e -> actual: 21 568s # %_e -> expected: 21 568s # %_e -> actual: 21 568s # %-e -> expected: 21 568s # %-e -> actual: 21 568s # %0e -> expected: 21 568s # %0e -> actual: 21 568s # %a -> expected: Thu 568s # %a -> actual: Thu 568s # %^a -> expected: THU 568s # %^a -> actual: THU 568s # %#a -> expected: THU 568s # %#a -> actual: THU 568s # %A -> expected: Thursday 568s # %A -> actual: Thursday 568s # %^A -> expected: THURSDAY 568s # %^A -> actual: THURSDAY 568s # %#A -> expected: THURSDAY 568s # %#A -> actual: THURSDAY 568s # %b -> expected: Jan 568s # %b -> actual: Jan 568s # %^b -> expected: JAN 568s # %^b -> actual: JAN 568s # %#b -> expected: JAN 568s # %#b -> actual: JAN 568s # %B -> expected: January 568s # %B -> actual: January 568s # %^B -> expected: JANUARY 568s # %^B -> actual: JANUARY 568s # %#B -> expected: JANUARY 568s # %#B -> actual: JANUARY 568s # %h -> expected: Jan 568s # %h -> actual: Jan 568s # %^h -> expected: JAN 568s # %^h -> actual: JAN 568s # %#h -> expected: JAN 568s # %#h -> actual: JAN 568s # %Z -> expected: UTC 568s # %Z -> actual: UTC 568s # %^Z -> expected: UTC 568s # %^Z -> actual: UTC 568s # %#Z -> expected: utc 568s # %#Z -> actual: utc 568s # %H -> expected: 01 568s # %H -> actual: 01 568s # %_H -> expected: 1 568s # %_H -> actual: 1 568s # %-H -> expected: 1 568s # %-H -> actual: 1 568s # %0H -> expected: 01 568s # %0H -> actual: 01 568s # %H -> expected: 21 568s # %H -> actual: 21 568s # %_H -> expected: 21 568s # %_H -> actual: 21 568s # %-H -> expected: 21 568s # %-H -> actual: 21 568s # %0H -> expected: 21 568s # %0H -> actual: 21 568s # %I -> expected: 01 568s # %I -> actual: 01 568s # %_I -> expected: 1 568s # %_I -> actual: 1 568s # %-I -> expected: 1 568s # %-I -> actual: 1 568s # %0I -> expected: 01 568s # %0I -> actual: 01 568s # %I -> expected: 11 568s # %I -> actual: 11 568s # %_I -> expected: 11 568s # %_I -> actual: 11 568s # %-I -> expected: 11 568s # %-I -> actual: 11 568s # %0I -> expected: 11 568s # %0I -> actual: 11 568s # %k -> expected:  1 568s # %k -> actual:  1 568s # %_k -> expected: 1 568s # %_k -> actual: 1 568s # %-k -> expected: 1 568s # %-k -> actual: 1 568s # %0k -> expected: 01 568s # %0k -> actual: 01 568s # %l -> expected:  1 568s # %l -> actual:  1 568s # %_l -> expected: 1 568s # %_l -> actual: 1 568s # %-l -> expected: 1 568s # %-l -> actual: 1 568s # %0l -> expected: 01 568s # %0l -> actual: 01 568s # %l -> expected: 11 568s # %l -> actual: 11 568s # %_l -> expected: 11 568s # %_l -> actual: 11 568s # %-l -> expected: 11 568s # %-l -> actual: 11 568s # %0l -> expected: 11 568s # %0l -> actual: 11 568s # %p -> expected: AM 568s # %p -> actual: AM 568s # %^p -> expected: AM 568s # %^p -> actual: AM 568s # %#p -> expected: am 568s # %#p -> actual: am 568s # %P -> expected: am 568s # %P -> actual: am 568s # %^P -> expected: AM 568s # %^P -> actual: AM 568s # %#P -> expected: am 568s # %#P -> actual: am 568s # %OH -> expected: Û²Û³ 568s # %OH -> actual: Û²Û³ 568s # %OI -> expected: Û±Û± 568s # %OI -> actual: Û±Û± 568s # %OM -> expected: Û°Û° 568s # %OM -> actual: Û°Û° 568s # %Om -> expected: Û°Û· 568s # %Om -> actual: Û°Û· 568s # %0Om -> expected: Û°Û· 568s # %0Om -> actual: Û°Û· 568s # %-Om -> expected: Û· 568s # %-Om -> actual: Û· 568s # %_Om -> expected: Û· 568s # %_Om -> actual: Û· 568s # %c -> expected: thu 01 jan 2009 00:00:00 utc 568s # %c -> actual: Thu 01 Jan 2009 00:00:00 UTC 568s # %Ec -> expected: thu 01 jan 2009 00:00:00 utc 568s # %Ec -> actual: Thu 01 Jan 2009 00:00:00 UTC 568s # %C -> expected: 20 568s # %C -> actual: 20 568s # %EC -> expected: 20 568s # %EC -> actual: 20 568s # %x -> expected: 02/01/09 568s # %x -> actual: 02/01/09 568s # %Ex -> expected: 02/01/09 568s # %Ex -> actual: 02/01/09 568s # %X -> expected: 01:02:03 568s # %X -> actual: 01:02:03 568s # %EX -> expected: 01:02:03 568s # %EX -> actual: 01:02:03 568s # %y -> expected: 09 568s # %y -> actual: 09 568s # %Ey -> expected: 09 568s # %Ey -> actual: 09 568s # %Y -> expected: 2009 568s # %Y -> actual: 2009 568s # %EY -> expected: 2009 568s # %EY -> actual: 2009 568s ok 37 /GDateTime/modifiers # SKIP locale gu_IN not available, skipping O modifier tests 568s # Bug Reference: http://bugzilla.gnome.org/749206 568s # %B -> expected: January 568s # %B -> actual: January 568s # %OB -> expected: February 568s # %OB -> actual: February 568s # %b -> expected: Mar 568s # %b -> actual: Mar 568s # %Ob -> expected: Apr 568s # %Ob -> actual: Apr 568s # %h -> expected: May 568s # %h -> actual: May 568s # %Oh -> expected: Jun 568s # %Oh -> actual: Jun 568s # %B -> expected: Juli 568s # %B -> actual: Juli 568s # %OB -> expected: August 568s # %OB -> actual: August 568s # %b -> expected: Sep 568s # %b -> actual: Sep 568s # %Ob -> expected: Okt 568s # %Ob -> actual: Okt 568s # %h -> expected: Nov 568s # %h -> actual: Nov 568s # %Oh -> expected: Dez 568s # %Oh -> actual: Dez 568s # %B -> expected: enero 568s # %B -> actual: enero 568s # %OB -> expected: febrero 568s # %OB -> actual: febrero 568s # %b -> expected: mar 568s # %b -> actual: mar 568s # %Ob -> expected: abr 568s # %Ob -> actual: abr 568s # %h -> expected: may 568s # %h -> actual: may 568s # %Oh -> expected: jun 568s # %Oh -> actual: jun 568s # %B -> expected: juillet 568s # %B -> actual: juillet 568s # %OB -> expected: août 568s # %OB -> actual: août 568s # %b -> expected: sept. 568s # %b -> actual: sept. 568s # %Ob -> expected: oct. 568s # %Ob -> actual: oct. 568s # %h -> expected: nov. 568s # %h -> actual: nov. 568s # %Oh -> expected: déc. 568s # %Oh -> actual: déc. 568s # %B -> expected: ΙανουαÏίου 568s # %B -> actual: ΙανουαÏίου 568s # %B -> expected: ΦεβÏουαÏίου 568s # %B -> actual: ΦεβÏουαÏίου 568s # %B -> expected: ΜαÏτίου 568s # %B -> actual: ΜαÏτίου 568s # %OB -> expected: ΑπÏίλιος 568s # %OB -> actual: ΑπÏίλιος 568s # %OB -> expected: Μάιος 568s # %OB -> actual: Μάιος 568s # %OB -> expected: ΙοÏνιος 568s # %OB -> actual: ΙοÏνιος 568s # %b -> expected: Ιουλ 568s # %b -> actual: Ιουλ 568s # %Ob -> expected: ΑÏγ 568s # %Ob -> actual: ΑÏγ 568s # %B -> expected: svibnja 568s # %B -> actual: svibnja 568s # %B -> expected: lipnja 568s # %B -> actual: lipnja 568s # %B -> expected: srpnja 568s # %B -> actual: srpnja 568s # %OB -> expected: Kolovoz 568s # %OB -> actual: kolovoz 568s # %OB -> expected: Rujan 568s # %OB -> actual: rujan 568s # %OB -> expected: Listopad 568s # %OB -> actual: listopad 568s # %b -> expected: Stu 568s # %b -> actual: stu 568s # %Ob -> expected: Pro 568s # %Ob -> actual: pro 568s # %B -> expected: sausio 568s # %B -> actual: sausio 568s # %B -> expected: vasario 568s # %B -> actual: vasario 568s # %B -> expected: kovo 568s # %B -> actual: kovo 568s # %OB -> expected: balandis 568s # %OB -> actual: balandis 568s # %OB -> expected: gegužė 568s # %OB -> actual: gegužė 568s # %OB -> expected: birželis 568s # %OB -> actual: birželis 568s # %b -> expected: liep. 568s # %b -> actual: liep. 568s # %Ob -> expected: rugp. 568s # %Ob -> actual: rugp. 568s # %B -> expected: maja 568s # %B -> actual: maja 568s # %B -> expected: czerwca 568s # %B -> actual: czerwca 568s # %B -> expected: lipca 568s # %B -> actual: lipca 568s # %OB -> expected: sierpieÅ„ 568s # %OB -> actual: sierpieÅ„ 568s # %OB -> expected: wrzesieÅ„ 568s # %OB -> actual: wrzesieÅ„ 568s # %OB -> expected: październik 568s # %OB -> actual: październik 568s # %b -> expected: lis 568s # %b -> actual: lis 568s # %Ob -> expected: gru 568s # %Ob -> actual: gru 568s # %B -> expected: ÑÐ½Ð²Ð°Ñ€Ñ 568s # %B -> actual: ÑÐ½Ð²Ð°Ñ€Ñ 568s # %B -> expected: Ñ„ÐµÐ²Ñ€Ð°Ð»Ñ 568s # %B -> actual: Ñ„ÐµÐ²Ñ€Ð°Ð»Ñ 568s # %B -> expected: марта 568s # %B -> actual: марта 568s # %OB -> expected: Ðпрель 568s # %OB -> actual: Ðпрель 568s # %OB -> expected: Май 568s # %OB -> actual: Май 568s # %OB -> expected: Июнь 568s # %OB -> actual: Июнь 568s # %b -> expected: июл 568s # %b -> actual: июл 568s # %Ob -> expected: авг 568s # %Ob -> actual: авг 568s # %b -> expected: Ð¼Ð°Ñ 568s # %b -> actual: Ð¼Ð°Ñ 568s # %Ob -> expected: май 568s # %Ob -> actual: май 568s ok 38 /GDateTime/month_names 568s ok 39 /GDateTime/to_local 568s ok 40 /GDateTime/to_unix 568s ok 41 /GDateTime/to_timeval 568s ok 42 /GDateTime/to_utc 568s ok 43 /GDateTime/now_utc 568s ok 44 /GDateTime/dst 568s # Bug Reference: http://bugzilla.gnome.org/642935 568s ok 45 /GDateTime/test_z 569s ok 46 /GDateTime/test-all-dates 569s # slow test /GDateTime/test-all-dates executed in 0.94 secs 569s ok 47 /GDateTime/unix_usec 569s # Start of new_from_unix tests 569s # Bug Reference: http://bugzilla.gnome.org/782089 569s ok 48 /GDateTime/new_from_unix/overflow 569s # End of new_from_unix tests 569s # Start of new_from_timeval tests 569s # Bug Reference: http://bugzilla.gnome.org/782089 569s # Maximum supported GTimeVal.tv_sec = 253402300799 569s ok 49 /GDateTime/new_from_timeval/overflow 569s # End of new_from_timeval tests 569s # Start of new_from_iso8601 tests 569s # /GDateTime/new_from_iso8601/2 summary: Further parser tests for g_date_time_new_from_iso8601(), checking success and failure using test vectors. 569s # Vector 0: 1990-11-01T10:21:17Z 569s # Vector 1: 19901101T102117Z 569s # Vector 2: 1970-01-01T00:00:17.12Z 569s # Vector 3: 1970-01-01T00:00:17.1234Z 569s # Vector 4: 1970-01-01T00:00:17.123456Z 569s # Vector 5: 1980-02-22T12:36:00+02:00 569s # Vector 6: 1990-12-31T15:59:60-08:00 569s # Vector 7: 569s # Vector 8: x 569s # Vector 9: 123x 569s # Vector 10: 2001-10+x 569s # Vector 11: 1980-02-22T 569s # Vector 12: 2001-10-08Tx 569s # Vector 13: 2001-10-08T10:11x 569s # Vector 14: Wed Dec 19 17:20:20 GMT 2007 569s # Vector 15: 1980-02-22T10:36:00Zulu 569s # Vector 16: 2T0+819855292164632335 569s # Vector 17: 2018-08-03T14:08:05.446178377+01:00 569s # Vector 18: 2147483648-08-03T14:08:05.446178377+01:00 569s # Vector 19: 2018-13-03T14:08:05.446178377+01:00 569s # Vector 20: 2018-00-03T14:08:05.446178377+01:00 569s # Vector 21: 2018-08-00T14:08:05.446178377+01:00 569s # Vector 22: 2018-08-32T14:08:05.446178377+01:00 569s # Vector 23: 2018-08-03T24:08:05.446178377+01:00 569s # Vector 24: 2018-08-03T14:60:05.446178377+01:00 569s # Vector 25: 2018-08-03T14:08:63.446178377+01:00 569s # Vector 26: 2018-08-03T14:08:05.446178377+100:00 569s # Vector 27: 20180803T140805.446178377+0100 569s # Vector 28: 21474836480803T140805.446178377+0100 569s # Vector 29: 20181303T140805.446178377+0100 569s # Vector 30: 20180003T140805.446178377+0100 569s # Vector 31: 20180800T140805.446178377+0100 569s # Vector 32: 20180832T140805.446178377+0100 569s # Vector 33: 20180803T240805.446178377+0100 569s # Vector 34: 20180803T146005.446178377+0100 569s # Vector 35: 20180803T140863.446178377+0100 569s # Vector 36: 20180803T140805.446178377+10000 569s # Vector 37: -0005-01-01T00:00:00Z 569s # Vector 38: 2018-08-06 569s # Vector 39: 20180803T140805,446178377+0100 569s # Vector 40: 2018-08-03T14:08:05.446178377-01:00 569s # Vector 41: 2018-08-03T14:08:05.446178377 01:00 569s # Vector 42: 1990-11-01T10:21:17 569s # Vector 43: 1719W462 407777-07 569s # Vector 44: 4011090 260528Z 569s ok - glib/gdatetime.test 569s # Running test: glib/memory-input-stream.test 569s # Vector 45: 0000W011 228214-22 569s ok 50 /GDateTime/new_from_iso8601/2 569s # End of new_from_iso8601 tests 569s # Start of format_mixed tests 569s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055 569s # %b -> expected: mar 569s # %b -> actual: Mar 569s # %B -> expected: march 569s # %B -> actual: March 569s ok 51 /GDateTime/format_mixed/utf8_time_non_utf8_messages 569s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055 569s # %b -> expected: mar 569s # %b -> actual: Mar 569s # %B -> expected: march 569s # %B -> actual: March 569s ok 52 /GDateTime/format_mixed/utf8_time_utf8_messages 569s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055 569s # %b -> expected: Mär 569s # %b -> actual: Mär 569s # %B -> expected: März 569s # %B -> actual: März 569s ok 53 /GDateTime/format_mixed/non_utf8_time_non_utf8_messages 569s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2055 569s # %b -> expected: Mär 569s # %b -> actual: Mär 569s # %B -> expected: März 569s # %B -> actual: März 569s ok 54 /GDateTime/format_mixed/non_utf8_time_utf8_messages 569s # End of format_mixed tests 569s # Start of strftime tests 569s # %r -> expected: (null) 569s # %r -> actual: (null) 569s ok 55 /GDateTime/strftime/error_handling 569s # End of strftime tests 569s # Start of eras tests 569s # %Ec -> expected: 令和05å¹´06月01æ—¥ 00時00分00ç§’ 569s # %Ec -> actual: 令和05å¹´06月01æ—¥ 00時00分00ç§’ 569s # %EC -> expected: 令和 569s # %EC -> actual: 令和 569s # %Ex -> expected: 令和05å¹´06月01æ—¥ 569s # %Ex -> actual: 令和05å¹´06月01æ—¥ 569s # %EX -> expected: 00時00分00ç§’ 569s # %EX -> actual: 00時00分00ç§’ 569s # %Ey -> expected: 05 569s # %Ey -> actual: 05 569s # %EY -> expected: 令和05å¹´ 569s # %EY -> actual: 令和05å¹´ 569s # %Ec -> expected: å¹³æˆ31å¹´04月30æ—¥ 00時00分00ç§’ 569s # %Ec -> actual: å¹³æˆ31å¹´04月30æ—¥ 00時00分00ç§’ 569s # %EC -> expected: å¹³æˆ 569s # %EC -> actual: å¹³æˆ 569s # %Ex -> expected: å¹³æˆ31å¹´04月30æ—¥ 569s # %Ex -> actual: å¹³æˆ31å¹´04月30æ—¥ 569s # %EX -> expected: 00時00分00ç§’ 569s # %EX -> actual: 00時00分00ç§’ 569s # %Ey -> expected: 31 569s # %Ey -> actual: 31 569s # %EY -> expected: å¹³æˆ31å¹´ 569s # %EY -> actual: å¹³æˆ31å¹´ 569s # %Ec -> expected: 昭和元年12月25æ—¥ 00時00分00ç§’ 569s # %Ec -> actual: 昭和元年12月25æ—¥ 00時00分00ç§’ 569s # %EC -> expected: 昭和 569s # %EC -> actual: 昭和 569s # %Ex -> expected: 昭和元年12月25æ—¥ 569s # %Ex -> actual: 昭和元年12月25æ—¥ 569s # %EX -> expected: 00時00分00ç§’ 569s # %EX -> actual: 00時00分00ç§’ 569s # %Ey -> expected: 01 569s # %Ey -> actual: 01 569s # %EY -> expected: 昭和元年 569s # %EY -> actual: 昭和元年 569s ok 56 /GDateTime/eras/japan 569s ok 57 /GDateTime/eras/thailand # SKIP locale th_TH.utf-8 not available, skipping Thai era tests 569s # Vector 0: 569s # Vector 1: +:1:-543/01/01:+*:พ.ศ.:%EC %Ey 569s # 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å¹´ 569s # Vector 3: -:2:2020/01/01:-*:令和:%EC%Eyå¹´ 569s # Vector 4: +:2:2020/01/01:2020/01/01:令和:%EC%Eyå¹´ 569s # Vector 5: +:2:+2020/01/01:+*:令和:%EC%Eyå¹´ 569s # Vector 6: .:2:2020/01/01:+*:令和:%EC%Eyå¹´ 569s # Vector 7: +.2:2020/01/01:+*:令和:%EC%Eyå¹´ 569s # Vector 8: + 569s # Vector 9: +: 569s # Vector 10: +:: 569s # Vector 11: +:200 569s # Vector 12: +:2nonsense 569s # Vector 13: +:2nonsense: 569s # Vector 14: +:2: 569s # Vector 15: +:2:: 569s # Vector 16: +:2:2020-01/01:+*:令和:%EC%Eyå¹´ 569s # Vector 17: +:2:2020nonsense/01/01:+*:令和:%EC%Eyå¹´ 569s # Vector 18: +:2:2020:+*:令和:%EC%Eyå¹´ 569s # Vector 19: +:2:18446744073709551615/01/01:+*:令和:%EC%Eyå¹´ 569s # Vector 20: +:2:2020/01-01:+*:令和:%EC%Eyå¹´ 569s # Vector 21: +:2:2020/01nonsense/01:+*:令和:%EC%Eyå¹´ 569s # Vector 22: +:2:2020/01:+*:令和:%EC%Eyå¹´ 569s # Vector 23: +:2:2020/00/01:+*:令和:%EC%Eyå¹´ 569s # Vector 24: +:2:2020/13/01:+*:令和:%EC%Eyå¹´ 569s # Vector 25: +:2:2020/01/00:+*:令和:%EC%Eyå¹´ 569s # Vector 26: +:2:2020/01/32:+*:令和:%EC%Eyå¹´ 569s # Vector 27: +:2:2020/01/01nonsense:+*:令和:%EC%Eyå¹´ 569s # Vector 28: +:2:2020/01/01 569s # Vector 29: +:2:2020/01/01: 569s # Vector 30: +:2:2020/01/01:: 569s # Vector 31: +:2:2020/01/01:2021-01-01:令和:%EC%Eyå¹´ 569s # Vector 32: +:2:2020/01/01:+* 569s # Vector 33: +:2:2020/01/01:+*: 569s # Vector 34: +:2:2020/01/01:+*:: 569s # Vector 35: +:2:2020/01/01:+*:令和 569s # Vector 36: +:2:2020/01/01:+*:令和: 569s # Vector 37: +:2:2020/01/01:+*:令和:; 569s ok 58 /GDateTime/eras/parsing 569s # End of eras tests 569s # End of GDateTime tests 569s # Start of GTimeZone tests 569s ok 59 /GTimeZone/find-interval 569s ok 60 /GTimeZone/adjust-time 569s ok 61 /GTimeZone/no-header 569s ok 62 /GTimeZone/no-header-identifier 569s ok 63 /GTimeZone/posix-parse 569s # Bug Reference: http://bugzilla.gnome.org/697715 569s ok 64 /GTimeZone/floating-point 569s # System time zone identifier: Etc/UTC 569s ok 65 /GTimeZone/identifier 569s # Vector 0: -158400 569s # Vector 1: -10000 569s # Vector 2: -3600 569s # Vector 3: -61 569s # Vector 4: -60 569s # Vector 5: -59 569s # Vector 6: 0 569s # Vector 7: 59 569s # Vector 8: 60 569s # Vector 9: 61 569s # Vector 10: 3600 569s # Vector 11: 10000 569s # Vector 12: 158400 569s ok 66 /GTimeZone/new-offset 569s # /GTimeZone/parse-rfc8536 summary: Test parsing time zone files in RFC 8536 version 3 format 569s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2129 569s ok 67 /GTimeZone/parse-rfc8536 569s # /GTimeZone/caching summary: GTimeZone instances are cached 569s ok 68 /GTimeZone/caching 569s # End of GTimeZone tests 569s TAP version 14 569s # random seed: R02Sa21b5c90f8b39accb03aa6cca40dcbb6 569s 1..6 569s # Start of memory-input-stream tests 569s ok 1 /memory-input-stream/read-chunks 569s ok 2 /memory-input-stream/async 569s ok 3 /memory-input-stream/seek 569s ok 4 /memory-input-stream/truncate 569s ok 5 /memory-input-stream/read-bytes 569s ok 6 /memory-input-stream/from-bytes 569s # End of memory-input-stream tests 569s ok - glib/memory-input-stream.test 569s # Running test: glib/struct-info.test 569s ok - glib/struct-info.test 569s # Running test: glib/performance.test 569s TAP version 14 569s # random seed: R02Sc4f42635e0e9ef480d07d37d1f456b71 569s 1..4 569s # Start of struct-info tests 569s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/home 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/cache 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/system-config1:/tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/system-config2 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/config 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/system-data1:/tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/system-data2 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/data 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/state 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_struct-info_GWUQ52/struct-info/field-iterators/.dirs/runtime 569s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 569s # /struct-info/field-iterators summary: Test iterating through a struct's fields with gi_struct_info_get_field() 569s ok 1 /struct-info/field-iterators 569s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/home 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/cache 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/system-config1:/tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/system-config2 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/config 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/system-data1:/tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/system-data2 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/data 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/state 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_struct-info_GWUQ52/struct-info/sizeof-gvalue/.dirs/runtime 569s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 569s # /struct-info/sizeof-gvalue summary: Test that gi_struct_info_get_size() reports the correct sizeof GValue 569s ok 2 /struct-info/sizeof-gvalue 569s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/home 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/cache 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/system-config1:/tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/system-config2 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/config 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/system-data1:/tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/system-data2 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/data 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/state 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_struct-info_GWUQ52/struct-info/is-pointer-for-struct-method-arg/.dirs/runtime 569s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 569s # /struct-info/is-pointer-for-struct-method-arg summary: Test that a struct method reports the correct type with gi_type_info_is_pointer() 569s ok 3 /struct-info/is-pointer-for-struct-method-arg 569s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/home 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/cache 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/system-config1:/tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/system-config2 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/config 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/system-data1:/tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/system-data2 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/data 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/state 569s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_struct-info_GWUQ52/struct-info/boxed/.dirs/runtime 569s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 569s # /struct-info/boxed summary: Test that a boxed struct is recognised as such 569s ok 4 /struct-info/boxed 569s # End of struct-info tests 570s # Executing: glib/performance.test 575s # Executing: glib/performance.test 576s simple-construction: Millions of constructed objects per second: 17.626 579s simple-construction1: Millions of constructed objects per second: 68.637 580s # Executing: glib/performance.test 582s complex-construction: Millions of constructed objects per second: 5.699 585s # Executing: glib/performance.test 587s complex-construction1: Millions of constructed objects per second: 10.603 590s # Executing: glib/performance.test 593s complex-construction2: Millions of constructed objects per second: 12.742 595s finalization: Millions of finalized objects per second: 3.053 595s # Executing: glib/performance.test 596s type-check: Million type checks per second: 102.27 597s emit-unhandled: Emissions per second: 4602825 598s emit-unhandled-empty: Emissions per second: 25924843 599s emit-unhandled-generic: Emissions per second: 5927658 600s # Executing: glib/performance.test 601s emit-unhandled-generic-empty: Emissions per second: 26013069 602s emit-unhandled-args: Emissions per second: 4060864 603s emit-handled: Emissions per second: 3179571 604s emit-handled-empty: Emissions per second: 3286250 605s # Executing: glib/performance.test 605s emit-handled-generic: Emissions per second: 3256150 607s emit-handled-generic-empty: Emissions per second: 5301277 608s emit-handled-args: Emissions per second: 2931658 609s notify-unhandled: Notify (unhandled) per second: 26737318 610s # Executing: glib/performance.test 610s notify-by-pspec-unhandled: Notify (unhandled) per second: 92941081 611s notify-handled: Notify per second: 1940068 613s notify-by-pspec-handled: Notify per second: 2058816 614s property-set: Property set per second: 13753470 615s # Executing: glib/performance.test 615s property-set-signaled: Property set per second: 2907259 616s property-get: Property get per second: 13517033 617s refcount: Million refs+unref per second: 27.18 619s refcount-1: Million refs+unref per second: 83.05 620s refcount-toggle: Million refs+unref per second: 42.71 620s ok - glib/performance.test 620s # Running test: glib/rec-mutex.test 620s TAP version 14 620s # random seed: R02S156a0afb1056756fd9c88ecf9abd7a7a 620s 1..29 620s # Start of thread tests 620s ok 1 /thread/rec-mutex1 620s ok 2 /thread/rec-mutex2 620s ok 3 /thread/rec-mutex3 620s ok 4 /thread/rec-mutex4 620s # Start of rec-mutex tests 620s # Start of perf tests 620s # Start of uncontended tests 620s # max perf: 0.500000 mips 620s ok 5 /thread/rec-mutex/perf/uncontended/depth1 620s # max perf: 1.000000 mips 620s ok 6 /thread/rec-mutex/perf/uncontended/depth2 620s # max perf: inf mips 620s ok 7 /thread/rec-mutex/perf/uncontended/depth3 620s # max perf: 1.000000 mips 620s ok 8 /thread/rec-mutex/perf/uncontended/depth4 620s # max perf: 1.000000 mips 620s ok 9 /thread/rec-mutex/perf/uncontended/depth5 620s # End of uncontended tests 620s # Start of contended1 tests 620s # max perf: inf mips 620s ok 10 /thread/rec-mutex/perf/contended1/depth1 620s # max perf: inf mips 620s ok 11 /thread/rec-mutex/perf/contended1/depth2 620s # max perf: inf mips 620s ok 12 /thread/rec-mutex/perf/contended1/depth3 620s # max perf: inf mips 620s ok 13 /thread/rec-mutex/perf/contended1/depth4 620s # max perf: inf mips 620s ok 14 /thread/rec-mutex/perf/contended1/depth5 620s # End of contended1 tests 620s # Start of contended2 tests 620s # max perf: 3.000000 mips 620s ok 15 /thread/rec-mutex/perf/contended2/depth1 620s # max perf: 3.000000 mips 620s ok 16 /thread/rec-mutex/perf/contended2/depth2 620s # max perf: 3.000000 mips 620s ok 17 /thread/rec-mutex/perf/contended2/depth3 620s # max perf: 3.000000 mips 620s ok 18 /thread/rec-mutex/perf/contended2/depth4 620s # max perf: 3.000000 mips 620s ok 19 /thread/rec-mutex/perf/contended2/depth5 620s # End of contended2 tests 620s # Start of contended3 tests 620s # max perf: inf mips 620s ok 20 /thread/rec-mutex/perf/contended3/depth1 620s # max perf: inf mips 620s ok 21 /thread/rec-mutex/perf/contended3/depth2 620s # max perf: 2.000000 mips 620s ok 22 /thread/rec-mutex/perf/contended3/depth3 620s # Executing: glib/rec-mutex.test 620s ok - glib/rec-mutex.test 620s # Running test: glib/gsocketclient-slow.test 620s # max perf: 4.000000 mips 620s ok 23 /thread/rec-mutex/perf/contended3/depth4 620s # max perf: 4.000000 mips 620s ok 24 /thread/rec-mutex/perf/contended3/depth5 620s # End of contended3 tests 620s # Start of contended4 tests 620s # max perf: 2.500000 mips 620s ok 25 /thread/rec-mutex/perf/contended4/depth1 620s # max perf: 2.500000 mips 620s ok 26 /thread/rec-mutex/perf/contended4/depth2 620s # max perf: 1.666667 mips 620s ok 27 /thread/rec-mutex/perf/contended4/depth3 620s # max perf: 2.500000 mips 620s ok 28 /thread/rec-mutex/perf/contended4/depth4 620s # max perf: 5.000000 mips 620s ok 29 /thread/rec-mutex/perf/contended4/depth5 620s # End of contended4 tests 620s # End of perf tests 620s # End of rec-mutex tests 620s # End of thread tests 620s TAP version 14 620s # random seed: R02Sf3b51ce9fcbcac14507441f862f926a5 620s 1..4 620s # Start of socket-client tests 620s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3184 620s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver? 620s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xbc36be6f6af0 and GSocketClientAsyncConnectData 0xbc36be6f10e0 620s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 620s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 620s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xbc36be6fa600 for GSocketClientAsyncConnectData 0xbc36be6f10e0 620s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 621s # GLib-GIO-DEBUG: GSocketClient: Connection attempt delay reached, trying another enumeration 621s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 621s # GLib-GIO-DEBUG: GSocketClient: Connection attempt failed: Connection refused 621s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 621s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 621s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xbc36be6fa600 for GSocketClientAsyncConnectData 0xbc36be6f10e0 621s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 621s # GLib-GIO-DEBUG: GSocketClient: Address enumeration completed (out of addresses) 621s # GLib-GIO-DEBUG: GSocketClient: Connection attempt failed: Connection refused 621s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Could not connect to localhost: Connection refused 621s ok 1 /socket-client/connection-fail 621s # slow test /socket-client/connection-fail executed in 1.20 secs 621s # Start of happy-eyeballs tests 621s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xbc36be6f9360 and GSocketClientAsyncConnectData 0xbc36be6f9f70 621s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 621s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 621s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xbc36be6fd580 for GSocketClientAsyncConnectData 0xbc36be6f9f70 621s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 622s # GLib-GIO-DEBUG: GSocketClient: Connection attempt delay reached, trying another enumeration 622s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 622s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 622s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 622s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 622s ok 2 /socket-client/happy-eyeballs/slow 622s # slow test /socket-client/happy-eyeballs/slow executed in 0.60 secs 622s # Start of cancellation tests 622s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xbc36be6f9c50 and GSocketClientAsyncConnectData 0xbc36be6fda00 622s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 622s # GLib-GIO-DEBUG: GSocketClient: Connection failed: Operation was cancelled 622s ok 3 /socket-client/happy-eyeballs/cancellation/instant 622s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xbc36be6f91b0 and GSocketClientAsyncConnectData 0xbc36be6fd710 622s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 622s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 622s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xbc36be6fd3c0 for GSocketClientAsyncConnectData 0xbc36be6fd710 622s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 622s # GLib-GIO-DEBUG: GSocketClient: Connection attempt delay reached, trying another enumeration 622s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 622s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 622s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 622s # GLib-GIO-DEBUG: GSocketClient: Connection cancelled! 622s ok 4 /socket-client/happy-eyeballs/cancellation/delayed 622s # slow test /socket-client/happy-eyeballs/cancellation/delayed executed in 0.60 secs 622s # End of cancellation tests 622s # End of happy-eyeballs tests 622s # End of socket-client tests 622s ok - glib/gsocketclient-slow.test 622s # Running test: glib/properties-refcount4.test 622s ok - glib/properties-refcount4.test 622s TAP version 14 622s # random seed: R02S760dce8eab9136bd9fb487f03dabc635 622s 1..1 622s # Start of gobject tests 622s # Start of refcount tests 622s ok 1 /gobject/refcount/properties-4 622s # End of refcount tests 622s # End of gobject tests 622s # Running test: glib/unicode-encoding.test 622s TAP version 14 622s # random seed: R02S944f9addd417ea1e6e114e219b71ebc6 622s 1..1 622s # Start of unicode tests 622s ok 1 /unicode/encoding 622s ok - glib/unicode-encoding.test 622s # Running test: glib/rwlock.test 622s # End of unicode tests 622s TAP version 14 622s # random seed: R02S8cce03ebb7eaa32db373588a2bb48017 622s 1..8 622s # Start of thread tests 622s ok 1 /thread/rwlock1 622s ok 2 /thread/rwlock2 622s ok 3 /thread/rwlock3 622s ok 4 /thread/rwlock4 622s ok 5 /thread/rwlock5 622s ok 6 /thread/rwlock6 625s # Executing: glib/rwlock.test 628s ok 7 /thread/rwlock7 628s # slow test /thread/rwlock7 executed in 5.88 secs 628s ok 8 /thread/rwlock8 628s # End of thread tests 628s ok - glib/rwlock.test 628s # Running test: glib/autoptr-girepository.test 628s TAP version 14 628s # random seed: R02S18e8f84a6d1cc302ece3fbb0d2be131a 628s 1..24 628s # Start of autoptr tests 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/repository/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 1 /autoptr/repository 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/typelib/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 2 /autoptr/typelib 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/base-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 3 /autoptr/base-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/arg-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 4 /autoptr/arg-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/callable-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 5 /autoptr/callable-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/callback-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 6 /autoptr/callback-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/constant-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 7 /autoptr/constant-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/enum-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 8 /autoptr/enum-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/field-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 9 /autoptr/field-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/flags-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 10 /autoptr/flags-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/function-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 11 /autoptr/function-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/interface-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 12 /autoptr/interface-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/object-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 13 /autoptr/object-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/property-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 14 /autoptr/property-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/registered-type-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 15 /autoptr/registered-type-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/signal-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 16 /autoptr/signal-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/struct-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 17 /autoptr/struct-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/type-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 18 /autoptr/type-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/union-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 19 /autoptr/union-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/value-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 20 /autoptr/value-info 628s ok - glib/autoptr-girepository.test 628s # Running test: glib/gdbus-export.test 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/autoptr/vfunc-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 21 /autoptr/vfunc-info 628s # End of autoptr tests 628s # Start of auto tests 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/auto/arg-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 22 /auto/arg-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/auto/type-info/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 23 /auto/type-info 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/system-config1:/tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/system-data1:/tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_autoptr-girepository_3KPB62/auto/function-invoker/.dirs/runtime 628s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 628s ok 24 /auto/function-invoker 628s # End of auto tests 628s TAP version 14 628s # random seed: R02Scdfc61809198596d4c61f8c379ab62e5 628s 1..7 628s # Start of gdbus tests 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/system-config1:/tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/system-data1:/tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration/.dirs/runtime 628s ok 1 /gdbus/object-registration 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/system-config1:/tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/system-data1:/tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures/.dirs/runtime 628s ok 2 /gdbus/object-registration-with-closures 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/system-config1:/tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/system-data1:/tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_DMOC62/gdbus/object-registration-with-closures2/.dirs/runtime 628s ok 3 /gdbus/object-registration-with-closures2 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/system-config1:/tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/system-data1:/tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_DMOC62/gdbus/registered-interfaces/.dirs/runtime 628s ok 4 /gdbus/registered-interfaces 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/system-config1:/tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/system-data1:/tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_DMOC62/gdbus/async-properties/.dirs/runtime 628s ok 5 /gdbus/async-properties 628s # Start of threaded-unregistration tests 628s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/home 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/cache 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/system-config1:/tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/system-config2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/config 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/system-data1:/tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/system-data2 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/data 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/state 628s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/object/.dirs/runtime 628s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2400 628s # /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 629s ok 6 /gdbus/threaded-unregistration/object # SKIP Failed to reproduce race (0 iterations with unregistration first, 1000 with call first); skipping test 629s # slow test /gdbus/threaded-unregistration/object executed in 1.10 secs 629s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/home 629s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/cache 629s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/system-config1:/tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/system-config2 629s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/config 629s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/system-data1:/tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/system-data2 629s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/data 629s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/state 629s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-export_DMOC62/gdbus/threaded-unregistration/subtree/.dirs/runtime 629s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2400 629s # /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 630s # Executing: glib/gdbus-export.test 631s ok - glib/gdbus-export.test 631s ok 7 /gdbus/threaded-unregistration/subtree # SKIP Failed to reproduce race (0 iterations with unregistration first, 1000 with call first); skipping test 631s # slow test /gdbus/threaded-unregistration/subtree executed in 1.11 secs 631s # End of threaded-unregistration tests 631s # End of gdbus tests 631s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 631s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 631s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 631s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 631s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 631s TAP version 14 631s # random seed: R02S70c9165e90b9e44b065b5de5194b9164 631s 1..41 631s # Start of utils tests 631s ok 1 /utils/language-names 631s ok 2 /utils/locale-variants 631s ok 3 /utils/version 631s ok 4 /utils/appname 631s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847 631s # /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name. 631s ok 5 /utils/prgname-thread-safety 631s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969 631s # /utils/tmpdir summary: Test that g_get_tmp_dir() returns a correct default if TMPDIR is set to the empty string 631s # Running test: glib/utils.test 631s ok 6 /utils/tmpdir 631s ok 7 /utils/basic_bits 631s ok 8 /utils/bits 631s ok 9 /utils/swap 631s ok 10 /utils/find-program 631s ok 11 /utils/find-program-for-path 631s ok - glib/utils.test 631s # Running test: glib/memory-settings-backend.test 631s ok 12 /utils/debug 631s ok 13 /utils/codeset 631s ok 14 /utils/codeset2 631s ok 15 /utils/console-charset 631s ok 16 /utils/gettext 631s ok 17 /utils/username 631s ok 18 /utils/realname 631s ok 19 /utils/hostname 631s ok 20 /utils/xdgdirs 631s ok 21 /utils/specialdir 631s # NAME: Ubuntu 631s ok 22 /utils/os-info 631s ok 23 /utils/clear-pointer 631s ok 24 /utils/clear-pointer-cast 631s ok 25 /utils/take-pointer 631s ok 26 /utils/clear-source 631s ok 27 /utils/misc-mem 631s # /utils/aligned-mem summary: Aligned memory allocator 631s # Alignment must not be zero 631s # Alignment must be a power of two 631s # Alignment must be a multiple of sizeof(void*) 631s ok 28 /utils/aligned-mem 631s # /utils/free-sized summary: Check that g_free_sized() works 631s ok 29 /utils/free-sized 631s ok 30 /utils/nullify 631s ok 31 /utils/atexit 631s ok 32 /utils/check-setuid 631s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663 631s ok 33 /utils/int-limits 631s ok 34 /utils/clear-list 631s ok 35 /utils/clear-slist 631s ok 36 /utils/steal-handle-id 631s # Start of specialdir tests 631s ok 37 /utils/specialdir/desktop 631s # End of specialdir tests 631s # Start of clear-pointer tests 631s ok 38 /utils/clear-pointer/side-effects 631s # End of clear-pointer tests 631s # Start of aligned-mem tests 631s # /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer 631s ok 39 /utils/aligned-mem/alignment 631s # /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation 631s ok 40 /utils/aligned-mem/zeroed 631s # /utils/aligned-mem/free-sized summary: Check that g_aligned_free_sized() works 631s ok 41 /utils/aligned-mem/free-sized 631s # Start of subprocess tests 631s # End of subprocess tests 631s # End of aligned-mem tests 631s # End of utils tests 631s TAP version 14 631s # random seed: R02S985db55c783ef7c6cd0a07a33ecabbaa 631s 1..1 631s # Start of memory-settings-backend tests 631s ok 1 /memory-settings-backend/extension-point-registered 631s # End of memory-settings-backend tests 631s ok - glib/memory-settings-backend.test 631s # Running test: glib/1bit-mutex.test 631s TAP version 14 631s # random seed: R02S5b82a8857d1c157a91253333faeecd31 631s 1..2 631s # Start of glib tests 631s # Start of 1bit-mutex tests 635s ok 1 /glib/1bit-mutex/int 635s # slow test /glib/1bit-mutex/int executed in 4.09 secs 635s # Executing: glib/1bit-mutex.test 639s ok 2 /glib/1bit-mutex/pointer 639s # slow test /glib/1bit-mutex/pointer executed in 4.09 secs 639s # End of 1bit-mutex tests 639s # End of glib tests 639s ok - glib/1bit-mutex.test 639s # Running test: glib/param.test 639s TAP version 14 639s # random seed: R02Sa026cc2ebc1a33dc5b9797df7c1985c2 639s 1..32 639s # Start of param tests 639s ok 1 /param/value 639s ok 2 /param/strings 639s ok 3 /param/qdata 639s ok 4 /param/validate 639s ok 5 /param/convert 639s ok 6 /param/implement # SKIP Skipping slow /param/implement test 639s ok 7 /param/default 639s ok 8 /param/is-valid-name 639s # Start of invalid-name tests 639s # /param/invalid-name/colon summary: Test that properties cannot be created with invalid names 639s ok 9 /param/invalid-name/colon 639s # /param/invalid-name/first-char summary: Test that properties cannot be created with invalid names 639s ok 10 /param/invalid-name/first-char 639s # /param/invalid-name/empty summary: Test that properties cannot be created with invalid names 639s ok 11 /param/invalid-name/empty 639s # End of invalid-name tests 639s # Start of implement tests 639s # Start of subprocess tests 639s # End of subprocess tests 639s # End of implement tests 639s # End of param tests 639s # Start of value tests 639s ok 12 /value/transform 639s # End of value tests 639s # Start of paramspec tests 639s ok 13 /paramspec/char 639s ok 14 /paramspec/uchar 639s ok 15 /paramspec/int 639s ok 16 /paramspec/uint 639s ok 17 /paramspec/long 639s ok 18 /paramspec/ulong 639s ok 19 /paramspec/int64 639s ok 20 /paramspec/uint64 639s ok 21 /paramspec/float 639s ok 22 /paramspec/double 639s ok 23 /paramspec/unichar 639s ok 24 /paramspec/param 639s ok 25 /paramspec/null-param 639s ok 26 /paramspec/string 639s ok 27 /paramspec/override 639s ok 28 /paramspec/gtype 639s ok 29 /paramspec/variant 639s ok 30 /paramspec/custom 639s ok 31 /paramspec/pool 639s # Start of variant tests 639s ok 32 /paramspec/variant/cmp 639s # End of variant tests 639s # End of paramspec tests 639s ok - glib/param.test 639s # Running test: glib/buffered-output-stream.test 639s TAP version 14 639s ok - glib/buffered-output-stream.test 639s # random seed: R02Sbfc5b478d171cdd4585df077bec17a7d 639s 1..5 639s # Start of buffered-output-stream tests 639s ok 1 /buffered-output-stream/write 639s ok 2 /buffered-output-stream/grow 639s ok 3 /buffered-output-stream/seek 639s ok 4 /buffered-output-stream/truncate 639s # End of buffered-output-stream tests 639s # Start of filter-output-stream tests 639s ok 5 /filter-output-stream/close 639s # End of filter-output-stream tests 639s # Running test: glib/callable-info.test 639s TAP version 14 639s # random seed: R02S844ff403edde9f23375223af6cd238a4 639s 1..5 639s # Start of callable-info tests 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/system-config1:/tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/system-data1:/tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_SAL552/callable-info/sync-function/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s ok 1 /callable-info/sync-function 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/system-config1:/tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/system-config2 639s ok - glib/callable-info.test 639s # Running test: glib/fileattributematcher.test 639s ok - glib/fileattributematcher.test 639s # Running test: glib/gobject-query.py.test 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/system-data1:/tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_SAL552/callable-info/async-function/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s ok 2 /callable-info/async-function 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/system-config1:/tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/system-data1:/tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_SAL552/callable-info/is-method/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s ok 3 /callable-info/is-method 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/system-config1:/tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/system-data1:/tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_SAL552/callable-info/static-method/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s ok 4 /callable-info/static-method 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/system-config1:/tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/system-data1:/tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_callable-info_SAL552/callable-info/static-vfunc/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # Bug Reference: https://gitlab.gnome.org/GNOME/gobject-introspection/-/merge_requests/361 639s ok 5 /callable-info/static-vfunc # SKIP g-ir-scanner is not new enough 639s # End of callable-info tests 639s TAP version 14 639s # random seed: R02S4890f5826e80b051fa6474796720669a 639s 1..3 639s # Start of fileattributematcher tests 639s ok 1 /fileattributematcher/exact 639s ok 2 /fileattributematcher/equality 639s ok 3 /fileattributematcher/subtract 639s # End of fileattributematcher tests 639s TAP version 13 639s ok 1 __main__.TestGobjectQuery.test_froots 639s # gobject-query: /usr/bin/gobject-query 639s # tmpdir: /tmp/tmppvxwsjea 639s # Running: ['/usr/bin/gobject-query', 'froots'] 639s # Return code: 0 639s # Output: 639s # ├void 639s # ├GInterface 639s # │ â””GTypePlugin 639s # ├gchar 639s # ├guchar 639s # ├gboolean 639s # ├gint 639s # ├guint 639s # ├glong 639s # ├gulong 639s # ├gint64 639s # ├guint64 639s # ├GEnum 639s # ├GFlags 639s # ├gfloat 639s # ├gdouble 639s # ├gchararray 639s # ├gpointer 639s # │ â””GType 639s # ├GBoxed 639s # │ â””GValueArray 639s # ├GParam 639s # │ ├GParamChar 639s # │ ├GParamUChar 639s # │ ├GParamBoolean 639s # │ ├GParamInt 639s # │ ├GParamUInt 639s # │ ├GParamLong 639s # │ ├GParamULong 639s # │ ├GParamInt64 639s # │ ├GParamUInt64 639s # │ ├GParamUnichar 639s # │ ├GParamEnum 639s # │ ├GParamFlags 639s # │ ├GParamFloat 639s # │ ├GParamDouble 639s # │ ├GParamString 639s # │ ├GParamParam 639s # │ ├GParamBoxed 639s # │ ├GParamPointer 639s # │ ├GParamValueArray 639s # │ ├GParamObject 639s # │ ├GParamOverride 639s # │ ├GParamGType 639s # │ â””GParamVariant 639s # ├GObject 639s # â””GVariant 639s # Error: 639s ok 2 __main__.TestGobjectQuery.test_help 639s # gobject-query: /usr/bin/gobject-query 639s # tmpdir: /tmp/tmpq3h3420k 639s # Running: ['/usr/bin/gobject-query', '--help'] 639s # Return code: 0 639s # Output: 639s # usage: gobject-query [-r ] [-{i|b} ""] [-s #] [-{h|x|y}] 639s # -r specify root type 639s # -n don't descend type tree 639s # -h show help 639s # -b specify indent string 639s # -i specify incremental indent string 639s # -s specify line spacing 639s # qualifiers: 639s # froots iterate over fundamental roots 639s # tree print type tree 639s # Error: 639s ok 3 __main__.TestGobjectQuery.test_tree 639s # gobject-query: /usr/bin/gobject-query 639s # tmpdir: /tmp/tmp0ti61skd 639s # Running: ['/usr/bin/gobject-query', 'tree'] 639s # Return code: 0 639s # Output: 639s # GObject 639s # Error: 639s ok 4 __main__.TestGobjectQuery.test_version 639s # gobject-query: /usr/bin/gobject-query 639s # tmpdir: /tmp/tmpb7v25em3 639s # Running: ['/usr/bin/gobject-query', '--version'] 639s # Return code: 0 639s # Output: 639s # 2.84.1 639s # Error: 639s 1..4 639s ok - glib/gobject-query.py.test 639s # Running test: glib/repository.test 639s TAP version 14 639s # random seed: R02Sf7b18cccae221f3dbc6f1eda665c816e 639s 1..23 639s # Start of repository tests 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/basic/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/basic/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/basic/.dirs/system-config1:/tmp/test_repository_6XV152/repository/basic/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/basic/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/basic/.dirs/system-data1:/tmp/test_repository_6XV152/repository/basic/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/basic/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/basic/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/basic/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/basic summary: Test basic opening of a repository and requiring a typelib 639s ok 1 /repository/basic 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/info/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/info/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/info/.dirs/system-config1:/tmp/test_repository_6XV152/repository/info/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/info/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/info/.dirs/system-data1:/tmp/test_repository_6XV152/repository/info/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/info/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/info/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/info/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/info summary: Test retrieving some basic info blobs from a typelib 639s ok 2 /repository/info 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/dependencies/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/dependencies/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/dependencies/.dirs/system-config1:/tmp/test_repository_6XV152/repository/dependencies/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/dependencies/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/dependencies/.dirs/system-data1:/tmp/test_repository_6XV152/repository/dependencies/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/dependencies/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/dependencies/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/dependencies/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/dependencies summary: Test ensures namespace dependencies are correctly exposed 639s ok 3 /repository/dependencies 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/arg-info/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/arg-info/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/arg-info/.dirs/system-config1:/tmp/test_repository_6XV152/repository/arg-info/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/arg-info/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/arg-info/.dirs/system-data1:/tmp/test_repository_6XV152/repository/arg-info/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/arg-info/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/arg-info/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/arg-info/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/arg-info summary: Test retrieving GIArgInfos from a typelib 639s ok 4 /repository/arg-info 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/callable-info/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/callable-info/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/callable-info/.dirs/system-config1:/tmp/test_repository_6XV152/repository/callable-info/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/callable-info/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/callable-info/.dirs/system-data1:/tmp/test_repository_6XV152/repository/callable-info/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/callable-info/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/callable-info/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/callable-info/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/callable-info summary: Test retrieving GICallableInfos from a typelib 639s ok 5 /repository/callable-info 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/callback-info/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/callback-info/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/callback-info/.dirs/system-config1:/tmp/test_repository_6XV152/repository/callback-info/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/callback-info/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/callback-info/.dirs/system-data1:/tmp/test_repository_6XV152/repository/callback-info/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/callback-info/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/callback-info/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/callback-info/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/callback-info summary: Test retrieving GICallbackInfos from a typelib 639s ok 6 /repository/callback-info 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/char-types/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/char-types/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/char-types/.dirs/system-config1:/tmp/test_repository_6XV152/repository/char-types/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/char-types/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/char-types/.dirs/system-data1:/tmp/test_repository_6XV152/repository/char-types/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/char-types/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/char-types/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/char-types/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/char-types summary: Test that signed and unsigned char GITypeInfo have GITypeTag of INT8 and UINT8 respectively 639s ok 7 /repository/char-types 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/system-config1:/tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/system-data1:/tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/constructor-return-type/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/constructor-return-type summary: Test the return type of a constructor, g_object_newv() 639s ok 8 /repository/constructor-return-type 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/system-config1:/tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/system-data1:/tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/enum-info-c-identifier/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/enum-info-c-identifier summary: Test that every enum member has a C identifier 639s ok 9 /repository/enum-info-c-identifier 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/system-config1:/tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/system-data1:/tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/enum-info-static-methods/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/enum-info-static-methods summary: Test an enum with methods 639s ok 10 /repository/enum-info-static-methods 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/error-quark/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/error-quark/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/error-quark/.dirs/system-config1:/tmp/test_repository_6XV152/repository/error-quark/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/error-quark/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/error-quark/.dirs/system-data1:/tmp/test_repository_6XV152/repository/error-quark/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/error-quark/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/error-quark/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/error-quark/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/error-quark summary: Test finding an error quark by error domain 639s ok 11 /repository/error-quark 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/system-config1:/tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/system-data1:/tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/flags-info-c-identifier/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/flags-info-c-identifier summary: Test that every flags member has a C identifier 639s ok 12 /repository/flags-info-c-identifier 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/system-config1:/tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/system-data1:/tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/fundamental-ref-func/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/fundamental-ref-func summary: Test getting the ref func of a fundamental type 639s ok 13 /repository/fundamental-ref-func 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/system-config1:/tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/system-data1:/tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/instance-method-ownership-transfer/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/instance-method-ownership-transfer summary: Test two methods of the same object having opposite ownership transfer of the instance parameter 639s ok 14 /repository/instance-method-ownership-transfer 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/system-config1:/tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/system-data1:/tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/object-gtype-interfaces/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/object-gtype-interfaces summary: Test gi_repository_get_object_gtype_interfaces() 639s ok 15 /repository/object-gtype-interfaces 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/system-config1:/tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/system-data1:/tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/signal-info-with-array-length-arg/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/signal-info-with-array-length-arg summary: Test finding the associated array length argument of an array parameter of a signal 639s ok 16 /repository/signal-info-with-array-length-arg 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/type-info-name/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/type-info-name/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/type-info-name/.dirs/system-config1:/tmp/test_repository_6XV152/repository/type-info-name/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/type-info-name/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/type-info-name/.dirs/system-data1:/tmp/test_repository_6XV152/repository/type-info-name/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/type-info-name/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/type-info-name/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/type-info-name/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/type-info-name summary: Test that gi_base_info_get_name() returns null for GITypeInfo 639s # Bug Reference: https://gitlab.gnome.org/GNOME/gobject-introspection/issues/96 639s ok 17 /repository/type-info-name 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/system-config1:/tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/system-data1:/tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/vfunc-info-with-no-invoker/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/vfunc-info-with-no-invoker summary: Test vfunc with no known invoker on object, such as GObject.dispose 639s ok 18 /repository/vfunc-info-with-no-invoker 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/system-config1:/tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/system-data1:/tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-interface/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/vfunc-info-with-invoker-on-interface summary: Test vfunc with invoker on interface, such as GFile.read_async 639s ok 19 /repository/vfunc-info-with-invoker-on-interface 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/system-config1:/tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/config 639s ok - glib/repository.test 639s # Running test: glib/markup-subparser.test 639s ok - glib/markup-subparser.test 639s # Running test: glib/protocol.test 639s ok - glib/protocol.test 639s # Running test: glib/gdbus-server-auth.test 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/system-data1:/tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/vfunc-info-with-invoker-on-object/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/vfunc-info-with-invoker-on-object summary: Test vfunc with invoker on object, such as GAppLaunchContext.get_display 639s ok 20 /repository/vfunc-info-with-invoker-on-object 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/system-config1:/tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/system-data1:/tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/find-by-gtype/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/find-by-gtype summary: Test finding a GType 639s ok 21 /repository/find-by-gtype 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/system-config1:/tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/system-data1:/tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/loaded-namespaces/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/loaded-namespaces summary: Test listing loaded namespaces 639s ok 22 /repository/loaded-namespaces 639s # Start of base-info tests 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository_6XV152/repository/base-info/clear/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository_6XV152/repository/base-info/clear/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository_6XV152/repository/base-info/clear/.dirs/system-config1:/tmp/test_repository_6XV152/repository/base-info/clear/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository_6XV152/repository/base-info/clear/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository_6XV152/repository/base-info/clear/.dirs/system-data1:/tmp/test_repository_6XV152/repository/base-info/clear/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository_6XV152/repository/base-info/clear/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository_6XV152/repository/base-info/clear/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository_6XV152/repository/base-info/clear/.dirs/runtime 639s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 639s # /repository/base-info/clear summary: Test calling gi_base_info_clear() on a zero-filled struct 639s ok 23 /repository/base-info/clear 639s # End of base-info tests 639s # End of repository tests 639s TAP version 14 639s # random seed: R02S5e398e3f70d3bbfeea000d7ca0d62efd 639s 1..14 639s # Start of glib tests 639s # Start of markup tests 639s # Start of subparser tests 639s # Start of success tests 639s ok 1 /glib/markup/subparser/success/0 639s ok 2 /glib/markup/subparser/success/1 639s ok 3 /glib/markup/subparser/success/2 639s ok 4 /glib/markup/subparser/success/3 639s ok 5 /glib/markup/subparser/success/4 639s ok 6 /glib/markup/subparser/success/5 639s ok 7 /glib/markup/subparser/success/6 639s # End of success tests 639s # Start of failure tests 639s ok 8 /glib/markup/subparser/failure/0 639s ok 9 /glib/markup/subparser/failure/1 639s ok 10 /glib/markup/subparser/failure/2 639s ok 11 /glib/markup/subparser/failure/3 639s ok 12 /glib/markup/subparser/failure/4 639s ok 13 /glib/markup/subparser/failure/5 639s ok 14 /glib/markup/subparser/failure/6 639s # End of failure tests 639s # End of subparser tests 639s # End of markup tests 639s # End of glib tests 639s TAP version 14 639s # random seed: R02S123f3946251e4f702525d34433a55a10 639s 1..9 639s # Start of glib tests 639s # Start of testing tests 639s # Start of protocol tests 639s ok 1 /glib/testing/protocol/debug 639s ok 2 /glib/testing/protocol/info 639s ok 3 /glib/testing/protocol/message 639s ok 4 /glib/testing/protocol/warning 639s ok 5 /glib/testing/protocol/critical 639s ok 6 /glib/testing/protocol/error 639s ok 7 /glib/testing/protocol/gtest-message 639s ok 8 /glib/testing/protocol/test-message 639s ok 9 /glib/testing/protocol/test-error 639s # End of protocol tests 639s # End of testing tests 639s # End of glib tests 639s TAP version 14 639s # random seed: R02Sc3f1c1ec767a4037d5bc896f9f18b2eb 639s 1..9 639s # Start of gdbus tests 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/system-config1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/system-data1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/.dirs/runtime 639s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-YZK252 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:false tcp:false 639s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-YZK252/dbus-tKUVg733 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 5034 639s ok 1 /gdbus/server-auth 639s # Start of server-auth tests 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/system-config1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/system-data1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/abstract/.dirs/runtime 639s # Testing GDBus server at unix:tmpdir=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-XGO352 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:true tcp:false 639s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-XGO352/dbus-6xTPv4jK 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 639s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 639s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 5034 639s ok 2 /gdbus/server-auth/abstract 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/tcp/.dirs/runtime 639s # Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:false tcp:true 639s ok 3 /gdbus/server-auth/tcp # SKIP https://gitlab.gnome.org/GNOME/glib/-/issues/2206 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/system-config1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/system-data1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/.dirs/runtime 639s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-15A352 / libdbus client, with flags: external:false anonymous:true sha1:false abstract:false tcp:false 639s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-15A352/dbus-S0yykFki 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 5034 639s ok 4 /gdbus/server-auth/anonymous 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/system-config1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/system-data1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/.dirs/runtime 639s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-3GK452 / libdbus client, with flags: external:true anonymous:false sha1:false abstract:false tcp:false 639s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-3GK452/dbus-bkKpDSCf 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 5034 639s ok 5 /gdbus/server-auth/external 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/system-config1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/system-data1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/.dirs/runtime 639s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-0FW352 / libdbus client, with flags: external:false anonymous:false sha1:true abstract:false tcp:false 639s ok 6 /gdbus/server-auth/sha1 # SKIP https://gitlab.gnome.org/GNOME/glib/-/issues/2206 639s # Start of anonymous tests 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/anonymous/tcp/.dirs/runtime 639s # Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:true sha1:false abstract:false tcp:true 639s ok 7 /gdbus/server-auth/anonymous/tcp # SKIP https://gitlab.gnome.org/GNOME/glib/-/issues/2206 639s # End of anonymous tests 639s # Start of external tests 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/system-config1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/system-data1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/external/require-same-user/.dirs/runtime 639s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-3UW352 / libdbus client, with flags: external:true anonymous:false sha1:false abstract:false tcp:false 639s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_CMK252/gdbus-server-auth-3UW352/dbus-LqEyKciK 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s ok - glib/gdbus-server-auth.test 639s # Running test: glib/utils-c-11.test 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 5034 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 639s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 639s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=5034,uid=1000,gid=1000 639s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 5034 639s ok 8 /gdbus/server-auth/external/require-same-user 639s # End of external tests 639s # Start of sha1 tests 639s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/home 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/cache 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/system-config2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/config 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/system-data2 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/data 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/state 639s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_CMK252/gdbus/server-auth/sha1/tcp/.dirs/runtime 639s # Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:false sha1:true abstract:false tcp:true 639s ok 9 /gdbus/server-auth/sha1/tcp # SKIP https://gitlab.gnome.org/GNOME/glib/-/issues/2206 639s # End of sha1 tests 639s # End of server-auth tests 639s # End of gdbus tests 639s TAP version 14 639s # random seed: R02Sa42511c928fc779a73fc297fffb4a8c4 639s 1..41 639s # Start of utils tests 639s ok 1 /utils/language-names 639s ok 2 /utils/locale-variants 639s ok 3 /utils/version 639s ok 4 /utils/appname 639s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847 639s # /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name. 639s ok 5 /utils/prgname-thread-safety 639s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969 639s # /utils/tmpdir summary: Test that g_get_tmp_dir() returns a correct default if TMPDIR is set to the empty string 639s ok 6 /utils/tmpdir 639s ok 7 /utils/basic_bits 639s ok 8 /utils/bits 639s ok 9 /utils/swap 639s ok 10 /utils/find-program 639s ok 11 /utils/find-program-for-path 639s ok 12 /utils/debug 639s ok 13 /utils/codeset 639s ok 14 /utils/codeset2 639s ok 15 /utils/console-charset 639s ok 16 /utils/gettext 639s ok 17 /utils/username 639s ok 18 /utils/realname 639s ok 19 /utils/hostname 639s ok 20 /utils/xdgdirs 639s ok 21 /utils/specialdir 639s # NAME: Ubuntu 639s ok 22 /utils/os-info 639s ok 23 /utils/clear-pointer 639s ok 24 /utils/clear-pointer-cast 639s ok - glib/utils-c-11.test 639s # Running test: glib/gapplication.test 639s ok 25 /utils/take-pointer 639s ok 26 /utils/clear-source 639s ok 27 /utils/misc-mem 639s # /utils/aligned-mem summary: Aligned memory allocator 639s # Alignment must not be zero 639s # Alignment must be a power of two 639s # Alignment must be a multiple of sizeof(void*) 639s ok 28 /utils/aligned-mem 639s # /utils/free-sized summary: Check that g_free_sized() works 639s ok 29 /utils/free-sized 639s ok 30 /utils/nullify 639s ok 31 /utils/atexit 639s ok 32 /utils/check-setuid 639s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663 639s ok 33 /utils/int-limits 639s ok 34 /utils/clear-list 639s ok 35 /utils/clear-slist 639s ok 36 /utils/steal-handle-id 639s # Start of specialdir tests 639s ok 37 /utils/specialdir/desktop 639s # End of specialdir tests 639s # Start of clear-pointer tests 639s ok 38 /utils/clear-pointer/side-effects 639s # End of clear-pointer tests 639s # Start of aligned-mem tests 639s # /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer 639s ok 39 /utils/aligned-mem/alignment 639s # /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation 639s ok 40 /utils/aligned-mem/zeroed 639s # /utils/aligned-mem/free-sized summary: Check that g_aligned_free_sized() works 639s ok 41 /utils/aligned-mem/free-sized 639s # Start of subprocess tests 639s # End of subprocess tests 639s # End of aligned-mem tests 639s # End of utils tests 639s TAP version 14 639s # random seed: R02S21982511ab96c89d42b6640db3ef8619 639s 1..24 639s # Start of gapplication tests 639s ok 1 /gapplication/no-dbus 639s ok 2 /gapplication/no-appid 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s ok 3 /gapplication/properties 639s ok 4 /gapplication/app-id 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s ok 5 /gapplication/quit 639s ok 6 /gapplication/registered 639s ok 7 /gapplication/local-actions 639s ok 8 /gapplication/local-command-line 639s ok 9 /gapplication/resource-path 639s ok 10 /gapplication/test-help 639s ok 11 /gapplication/command-line-done 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s ok 12 /gapplication/test-busy 639s ok 13 /gapplication/test-handle-local-options1 639s ok 14 /gapplication/test-handle-local-options2 639s ok 15 /gapplication/test-handle-local-options3 639s ok 16 /gapplication/api 639s ok 17 /gapplication/version 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # launching subprocess 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s ok 18 /gapplication/replace 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 639s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 639s # launching subprocess 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s ok 19 /gapplication/no-replace 640s # slow test /gapplication/no-replace executed in 0.51 secs 640s # Start of dbus tests 640s # /gapplication/dbus/activate summary: Test that calling the Activate D-Bus method works 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 640s # Message 0 640s # Message 1 640s # Message 2 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s ok 20 /gapplication/dbus/activate 640s # /gapplication/dbus/open summary: Test that calling the Open D-Bus method works 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 640s # Message 0 640s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 640s # Message 1 640s # Message 2 640s # Message 3 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s ok 21 /gapplication/dbus/open 640s # /gapplication/dbus/command-line summary: Test that calling the CommandLine D-Bus method works 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 640s # Message 0 640s # Message 1 640s # Message 2 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s ok 22 /gapplication/dbus/command-line 640s # /gapplication/dbus/command-line-done summary: Test that GDBusCommandLine.done() works 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s ok 23 /gapplication/dbus/command-line-done 640s # /gapplication/dbus/activate-action summary: Test that calling the ActivateAction D-Bus method works 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 640s # Message 0 640s # Message 1 640s # Message 2 640s # Message 3 640s # Message 4 640s # Message 5 640s # Message 6 640s # Message 7 640s # Message 8 640s # Message 9 640s # Message 10 640s # Message 11 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 640s ok 24 /gapplication/dbus/activate-action 640s # End of dbus tests 640s # End of gapplication tests 640s ok - glib/gapplication.test 640s # Running test: glib/thread-pool-slow.test 640s TAP version 14 640s # random seed: R02Se150113878eb9ec2abe9a551ae8d5089 640s 1..7 640s # Start of threadpool tests 640s ok 1 /threadpool/functions 640s # Executing: glib/thread-pool-slow.test 640s ok 2 /threadpool/stop-unused 640s # slow test /threadpool/stop-unused executed in 0.51 secs 640s ok 3 /threadpool/pools 640s # [unsorted] ===> pushed new thread with id:99, number of threads:1, unprocessed:1 640s # [unsorted] ===> pushed new thread with id:48, number of threads:2, unprocessed:2 640s # [unsorted] ===> pushed new thread with id:61, number of threads:3, unprocessed:3 640s # [unsorted] ===> pushed new thread with id:56, number of threads:4, unprocessed:4 640s # [unsorted] ===> pushed new thread with id:82, number of threads:5, unprocessed:5 640s # [unsorted] ===> pushed new thread with id:47, number of threads:6, unprocessed:6 640s # [unsorted] ===> pushed new thread with id:11, number of threads:7, unprocessed:7 640s # [unsorted] ===> pushed new thread with id:91, number of threads:8, unprocessed:8 640s # [unsorted] ===> pushed new thread with id:63, number of threads:9, unprocessed:9 640s # [unsorted] ===> pushed new thread with id:66, number of threads:10, unprocessed:10 640s # [unsorted] ===> pushed new thread with id:90, number of threads:10, unprocessed:11 640s # [unsorted] ===> pushed new thread with id:20, number of threads:10, unprocessed:12 640s # [unsorted] ===> pushed new thread with id:76, number of threads:10, unprocessed:13 640s # [unsorted] ===> pushed new thread with id:18, number of threads:10, unprocessed:14 640s # [unsorted] ===> pushed new thread with id:100, number of threads:10, unprocessed:15 640s # [unsorted] ===> pushed new thread with id:22, number of threads:10, unprocessed:16 640s # [unsorted] ===> pushed new thread with id:84, number of threads:10, unprocessed:17 640s # [unsorted] ===> pushed new thread with id:10, number of threads:10, unprocessed:18 640s # [unsorted] ===> pushed new thread with id:28, number of threads:10, unprocessed:19 640s # [unsorted] ===> pushed new thread with id:4, number of threads:10, unprocessed:20 640s # [unsorted] ===> pushed new thread with id:97, number of threads:10, unprocessed:21 640s # [unsorted] ===> pushed new thread with id:33, number of threads:10, unprocessed:22 640s # [unsorted] ===> pushed new thread with id:70, number of threads:10, unprocessed:23 640s # [unsorted] ===> pushed new thread with id:40, number of threads:10, unprocessed:24 640s # [unsorted] ===> pushed new thread with id:26, number of threads:10, unprocessed:25 640s # [unsorted] ===> pushed new thread with id:60, number of threads:10, unprocessed:26 640s # [unsorted] ===> pushed new thread with id:5, number of threads:10, unprocessed:27 640s # [unsorted] ===> pushed new thread with id:63, number of threads:10, unprocessed:28 640s # [unsorted] ===> pushed new thread with id:84, number of threads:10, unprocessed:29 640s # [unsorted] ===> pushed new thread with id:77, number of threads:10, unprocessed:30 640s # [unsorted] ===> pushed new thread with id:81, number of threads:10, unprocessed:31 640s # [unsorted] ===> pushed new thread with id:96, number of threads:10, unprocessed:32 640s # [unsorted] ===> pushed new thread with id:16, number of threads:10, unprocessed:33 640s # [unsorted] ===> pushed new thread with id:30, number of threads:10, unprocessed:34 640s # [unsorted] ===> pushed new thread with id:28, number of threads:10, unprocessed:34 640s # [unsorted] ===> pushed new thread with id:61, number of threads:10, unprocessed:29 640s # [unsorted] ===> pushed new thread with id:76, number of threads:10, unprocessed:30 640s # [unsorted] ===> pushed new thread with id:70, number of threads:10, unprocessed:31 640s # [unsorted] ===> pushed new thread with id:88, number of threads:10, unprocessed:32 640s # [unsorted] ===> pushed new thread with id:36, number of threads:10, unprocessed:33 640s # [unsorted] ===> pushed new thread with id:15, number of threads:10, unprocessed:34 640s # [unsorted] ===> pushed new thread with id:49, number of threads:10, unprocessed:35 640s # [unsorted] ===> pushed new thread with id:15, number of threads:10, unprocessed:35 640s # [unsorted] ===> pushed new thread with id:90, number of threads:10, unprocessed:36 640s # [unsorted] ===> pushed new thread with id:93, number of threads:10, unprocessed:35 640s # [unsorted] ===> pushed new thread with id:95, number of threads:10, unprocessed:36 640s # [unsorted] ===> pushed new thread with id:36, number of threads:10, unprocessed:37 640s # [unsorted] ===> pushed new thread with id:27, number of threads:10, unprocessed:38 640s # [unsorted] ===> pushed new thread with id:73, number of threads:10, unprocessed:39 640s # [unsorted] ===> pushed new thread with id:34, number of threads:10, unprocessed:40 640s # [unsorted] ===> pushed new thread with id:60, number of threads:10, unprocessed:41 640s # [unsorted] ===> pushed new thread with id:68, number of threads:10, unprocessed:42 640s # [unsorted] ===> pushed new thread with id:43, number of threads:10, unprocessed:43 640s # [unsorted] ===> pushed new thread with id:100, number of threads:10, unprocessed:44 640s # [unsorted] ===> pushed new thread with id:82, number of threads:10, unprocessed:45 640s # [unsorted] ===> pushed new thread with id:50, number of threads:10, unprocessed:46 640s # [unsorted] ===> pushed new thread with id:19, number of threads:10, unprocessed:47 640s # [unsorted] ===> pushed new thread with id:16, number of threads:10, unprocessed:48 640s # [unsorted] ===> pushed new thread with id:20, number of threads:10, unprocessed:49 640s # [unsorted] ===> pushed new thread with id:29, number of threads:10, unprocessed:50 640s # [unsorted] ===> pushed new thread with id:68, number of threads:10, unprocessed:51 640s # [unsorted] ===> pushed new thread with id:8, number of threads:10, unprocessed:52 640s # [unsorted] ===> pushed new thread with id:87, number of threads:10, unprocessed:53 640s # [unsorted] ===> pushed new thread with id:46, number of threads:10, unprocessed:54 640s # [unsorted] ===> pushed new thread with id:88, number of threads:10, unprocessed:55 640s # [unsorted] ===> pushed new thread with id:11, number of threads:10, unprocessed:56 640s # [unsorted] ===> pushed new thread with id:91, number of threads:10, unprocessed:57 640s # [unsorted] ===> pushed new thread with id:78, number of threads:10, unprocessed:58 640s # [unsorted] ===> pushed new thread with id:30, number of threads:10, unprocessed:59 640s # [unsorted] ===> pushed new thread with id:96, number of threads:10, unprocessed:60 640s # [unsorted] ===> pushed new thread with id:71, number of threads:10, unprocessed:61 640s # [unsorted] ===> pushed new thread with id:76, number of threads:10, unprocessed:62 640s # [unsorted] ===> pushed new thread with id:13, number of threads:10, unprocessed:63 640s # [unsorted] ===> pushed new thread with id:42, number of threads:10, unprocessed:64 640s # [unsorted] ===> pushed new thread with id:33, number of threads:10, unprocessed:65 640s # [unsorted] ===> pushed new thread with id:37, number of threads:10, unprocessed:66 640s # [unsorted] ===> pushed new thread with id:94, number of threads:10, unprocessed:67 640s # [unsorted] ===> pushed new thread with id:60, number of threads:10, unprocessed:68 640s # [unsorted] ===> pushed new thread with id:45, number of threads:10, unprocessed:69 640s # [unsorted] ===> pushed new thread with id:10, number of threads:10, unprocessed:70 640s # [unsorted] ===> pushed new thread with id:67, number of threads:10, unprocessed:71 640s # [unsorted] ===> pushed new thread with id:26, number of threads:10, unprocessed:72 640s # [unsorted] ===> pushed new thread with id:21, number of threads:10, unprocessed:73 640s # [unsorted] ===> pushed new thread with id:20, number of threads:10, unprocessed:74 640s # [unsorted] ===> pushed new thread with id:86, number of threads:10, unprocessed:75 640s # [unsorted] ===> pushed new thread with id:64, number of threads:10, unprocessed:76 640s # [unsorted] ===> pushed new thread with id:88, number of threads:10, unprocessed:77 640s # [unsorted] ===> pushed new thread with id:21, number of threads:10, unprocessed:78 640s # [unsorted] ===> pushed new thread with id:79, number of threads:10, unprocessed:79 640s # [unsorted] ===> pushed new thread with id:17, number of threads:10, unprocessed:80 640s # [unsorted] ===> pushed new thread with id:65, number of threads:10, unprocessed:81 640s # [unsorted] ===> pushed new thread with id:48, number of threads:10, unprocessed:82 640s # [unsorted] ===> pushed new thread with id:74, number of threads:10, unprocessed:83 640s # [unsorted] ===> pushed new thread with id:67, number of threads:10, unprocessed:84 640s # [unsorted] ===> pushed new thread with id:55, number of threads:10, unprocessed:85 640s # [unsorted] ===> pushed new thread with id:85, number of threads:10, unprocessed:86 640s # [unsorted] ===> pushed new thread with id:52, number of threads:10, unprocessed:87 640s # [unsorted] ===> pushed new thread with id:55, number of threads:10, unprocessed:88 640s # [unsorted] ===> pushed new thread with id:88, number of threads:10, unprocessed:89 640s # [unsorted] ===> pushed new thread with id:22, number of threads:10, unprocessed:90 641s ok 4 /threadpool/no-sort 641s # [ sorted] ===> pushed new thread with id:44, number of threads:0, unprocessed:1 641s # [ sorted] ===> pushed new thread with id:98, number of threads:0, unprocessed:2 641s # [ sorted] ===> pushed new thread with id:74, number of threads:0, unprocessed:3 641s # [ sorted] ===> pushed new thread with id:55, number of threads:0, unprocessed:4 641s # [ sorted] ===> pushed new thread with id:83, number of threads:0, unprocessed:5 641s # [ sorted] ===> pushed new thread with id:2, number of threads:0, unprocessed:6 641s # [ sorted] ===> pushed new thread with id:43, number of threads:0, unprocessed:7 641s # [ sorted] ===> pushed new thread with id:47, number of threads:0, unprocessed:8 641s # [ sorted] ===> pushed new thread with id:98, number of threads:0, unprocessed:9 641s # [ sorted] ===> pushed new thread with id:85, number of threads:0, unprocessed:10 641s # [ sorted] ===> pushed new thread with id:17, number of threads:0, unprocessed:11 641s # [ sorted] ===> pushed new thread with id:17, number of threads:0, unprocessed:12 641s # [ sorted] ===> pushed new thread with id:27, number of threads:0, unprocessed:13 641s # [ sorted] ===> pushed new thread with id:8, number of threads:0, unprocessed:14 641s # [ sorted] ===> pushed new thread with id:99, number of threads:0, unprocessed:15 641s # [ sorted] ===> pushed new thread with id:88, number of threads:0, unprocessed:16 641s # [ sorted] ===> pushed new thread with id:4, number of threads:0, unprocessed:17 641s # [ sorted] ===> pushed new thread with id:97, number of threads:0, unprocessed:18 641s # [ sorted] ===> pushed new thread with id:42, number of threads:0, unprocessed:19 641s # [ sorted] ===> pushed new thread with id:73, number of threads:0, unprocessed:20 641s # [ sorted] ===> pushed new thread with id:53, number of threads:0, unprocessed:21 641s # [ sorted] ===> pushed new thread with id:52, number of threads:0, unprocessed:22 641s # [ sorted] ===> pushed new thread with id:35, number of threads:0, unprocessed:23 641s # [ sorted] ===> pushed new thread with id:55, number of threads:0, unprocessed:24 641s # [ sorted] ===> pushed new thread with id:50, number of threads:0, unprocessed:25 641s # [ sorted] ===> pushed new thread with id:54, number of threads:0, unprocessed:26 641s # [ sorted] ===> pushed new thread with id:17, number of threads:0, unprocessed:27 641s # [ sorted] ===> pushed new thread with id:69, number of threads:0, unprocessed:28 641s # [ sorted] ===> pushed new thread with id:36, number of threads:0, unprocessed:29 641s # [ sorted] ===> pushed new thread with id:32, number of threads:0, unprocessed:30 641s # [ sorted] ===> pushed new thread with id:37, number of threads:0, unprocessed:31 641s # [ sorted] ===> pushed new thread with id:88, number of threads:0, unprocessed:32 641s # [ sorted] ===> pushed new thread with id:48, number of threads:0, unprocessed:33 641s # [ sorted] ===> pushed new thread with id:61, number of threads:0, unprocessed:34 641s # [ sorted] ===> pushed new thread with id:59, number of threads:0, unprocessed:35 641s # [ sorted] ===> pushed new thread with id:68, number of threads:0, unprocessed:36 641s # [ sorted] ===> pushed new thread with id:60, number of threads:0, unprocessed:37 641s # [ sorted] ===> pushed new thread with id:86, number of threads:0, unprocessed:38 641s # [ sorted] ===> pushed new thread with id:51, number of threads:0, unprocessed:39 641s # [ sorted] ===> pushed new thread with id:81, number of threads:0, unprocessed:40 641s # [ sorted] ===> pushed new thread with id:11, number of threads:0, unprocessed:41 641s # [ sorted] ===> pushed new thread with id:26, number of threads:0, unprocessed:42 641s # [ sorted] ===> pushed new thread with id:33, number of threads:0, unprocessed:43 641s # [ sorted] ===> pushed new thread with id:30, number of threads:0, unprocessed:44 641s # [ sorted] ===> pushed new thread with id:82, number of threads:0, unprocessed:45 641s # [ sorted] ===> pushed new thread with id:91, number of threads:0, unprocessed:46 641s # [ sorted] ===> pushed new thread with id:99, number of threads:0, unprocessed:47 641s # [ sorted] ===> pushed new thread with id:11, number of threads:0, unprocessed:48 641s # [ sorted] ===> pushed new thread with id:89, number of threads:0, unprocessed:49 641s # [ sorted] ===> pushed new thread with id:24, number of threads:0, unprocessed:50 641s # [ sorted] ===> pushed new thread with id:64, number of threads:0, unprocessed:51 641s # [ sorted] ===> pushed new thread with id:47, number of threads:0, unprocessed:52 641s # [ sorted] ===> pushed new thread with id:32, number of threads:0, unprocessed:53 641s # [ sorted] ===> pushed new thread with id:64, number of threads:0, unprocessed:54 641s # [ sorted] ===> pushed new thread with id:48, number of threads:0, unprocessed:55 641s # [ sorted] ===> pushed new thread with id:73, number of threads:0, unprocessed:56 641s # [ sorted] ===> pushed new thread with id:49, number of threads:0, unprocessed:57 641s # [ sorted] ===> pushed new thread with id:68, number of threads:0, unprocessed:58 641s # [ sorted] ===> pushed new thread with id:73, number of threads:0, unprocessed:59 641s # [ sorted] ===> pushed new thread with id:40, number of threads:0, unprocessed:60 641s # [ sorted] ===> pushed new thread with id:56, number of threads:0, unprocessed:61 641s # [ sorted] ===> pushed new thread with id:91, number of threads:0, unprocessed:62 641s # [ sorted] ===> pushed new thread with id:57, number of threads:0, unprocessed:63 641s # [ sorted] ===> pushed new thread with id:43, number of threads:0, unprocessed:64 641s # [ sorted] ===> pushed new thread with id:52, number of threads:0, unprocessed:65 641s # [ sorted] ===> pushed new thread with id:57, number of threads:0, unprocessed:66 641s # [ sorted] ===> pushed new thread with id:27, number of threads:0, unprocessed:67 641s # [ sorted] ===> pushed new thread with id:93, number of threads:0, unprocessed:68 641s # [ sorted] ===> pushed new thread with id:17, number of threads:0, unprocessed:69 641s # [ sorted] ===> pushed new thread with id:54, number of threads:0, unprocessed:70 641s # [ sorted] ===> pushed new thread with id:49, number of threads:0, unprocessed:71 641s # [ sorted] ===> pushed new thread with id:18, number of threads:0, unprocessed:72 641s # [ sorted] ===> pushed new thread with id:22, number of threads:0, unprocessed:73 641s # [ sorted] ===> pushed new thread with id:76, number of threads:0, unprocessed:74 641s # [ sorted] ===> pushed new thread with id:61, number of threads:0, unprocessed:75 641s # [ sorted] ===> pushed new thread with id:37, number of threads:0, unprocessed:76 641s # [ sorted] ===> pushed new thread with id:49, number of threads:0, unprocessed:77 641s # [ sorted] ===> pushed new thread with id:50, number of threads:0, unprocessed:78 641s # [ sorted] ===> pushed new thread with id:80, number of threads:0, unprocessed:79 641s # [ sorted] ===> pushed new thread with id:64, number of threads:0, unprocessed:80 641s # [ sorted] ===> pushed new thread with id:89, number of threads:0, unprocessed:81 641s # [ sorted] ===> pushed new thread with id:95, number of threads:0, unprocessed:82 641s # [ sorted] ===> pushed new thread with id:51, number of threads:0, unprocessed:83 641s # [ sorted] ===> pushed new thread with id:82, number of threads:0, unprocessed:84 641s # [ sorted] ===> pushed new thread with id:10, number of threads:0, unprocessed:85 641s # [ sorted] ===> pushed new thread with id:42, number of threads:0, unprocessed:86 641s # [ sorted] ===> pushed new thread with id:79, number of threads:0, unprocessed:87 641s # [ sorted] ===> pushed new thread with id:47, number of threads:0, unprocessed:88 641s # [ sorted] ===> pushed new thread with id:18, number of threads:0, unprocessed:89 641s # [ sorted] ===> pushed new thread with id:84, number of threads:0, unprocessed:90 641s # [ sorted] ===> pushed new thread with id:31, number of threads:0, unprocessed:91 641s # [ sorted] ===> pushed new thread with id:100, number of threads:0, unprocessed:92 641s # [ sorted] ===> pushed new thread with id:99, number of threads:0, unprocessed:93 641s # [ sorted] ===> pushed new thread with id:85, number of threads:0, unprocessed:94 641s # [ sorted] ===> pushed new thread with id:51, number of threads:0, unprocessed:95 641s # [ sorted] ===> pushed new thread with id:77, number of threads:0, unprocessed:96 641s # [ sorted] ===> pushed new thread with id:82, number of threads:0, unprocessed:97 641s # [ sorted] ===> pushed new thread with id:85, number of threads:0, unprocessed:98 641s # [ sorted] ===> pushed new thread with id:3, number of threads:0, unprocessed:99 641s # [ sorted] ===> pushed new thread with id:94, number of threads:0, unprocessed:100 641s # Starting thread pool processing 641s ok 5 /threadpool/sort 641s ok 6 /threadpool/stop-unused-multiple 641s # slow test /threadpool/stop-unused-multiple executed in 0.51 secs 641s # Pool idle thread count: 0, unprocessed jobs: 40 642s # Pool idle thread count: 0, unprocessed jobs: 0 642s # Pool idle thread count: 0, unprocessed jobs: 0 642s # Pool idle thread count: 10, unprocessed jobs: 0 642s # Pool idle thread count: 10, unprocessed jobs: 0 643s # Pool idle thread count: 10, unprocessed jobs: 0 643s # Pool idle thread count: 10, unprocessed jobs: 0 643s # Pool idle thread count: 10, unprocessed jobs: 0 643s # Pool idle thread count: 10, unprocessed jobs: 0 644s # Pool idle thread count: 10, unprocessed jobs: 0 644s # Pool idle thread count: 10, unprocessed jobs: 0 644s # Pool idle thread count: 10, unprocessed jobs: 0 644s # Pool idle thread count: 10, unprocessed jobs: 0 645s # Pool idle thread count: 10, unprocessed jobs: 0 645s # Pool idle thread count: 10, unprocessed jobs: 0 645s # Executing: glib/thread-pool-slow.test 645s # Pool idle thread count: 10, unprocessed jobs: 0 645s # Pool idle thread count: 10, unprocessed jobs: 0 646s # Pool idle thread count: 10, unprocessed jobs: 0 646s # Pool idle thread count: 10, unprocessed jobs: 0 646s # Pool idle thread count: 10, unprocessed jobs: 0 646s # Pool idle thread count: 10, unprocessed jobs: 0 647s # Pool idle thread count: 10, unprocessed jobs: 0 647s # Pool idle thread count: 10, unprocessed jobs: 0 647s # Pool idle thread count: 10, unprocessed jobs: 0 647s # Pool idle thread count: 10, unprocessed jobs: 0 648s # Pool idle thread count: 10, unprocessed jobs: 0 648s # Pool idle thread count: 10, unprocessed jobs: 0 648s # Pool idle thread count: 10, unprocessed jobs: 0 648s # Pool idle thread count: 10, unprocessed jobs: 0 649s # Pool idle thread count: 10, unprocessed jobs: 0 649s # Pool idle thread count: 10, unprocessed jobs: 0 649s # Pool idle thread count: 10, unprocessed jobs: 0 649s # Pool idle thread count: 10, unprocessed jobs: 0 650s # Pool idle thread count: 10, unprocessed jobs: 0 650s # Pool idle thread count: 10, unprocessed jobs: 0 650s # Executing: glib/thread-pool-slow.test 650s # Pool idle thread count: 10, unprocessed jobs: 2 650s # Pool idle thread count: 9, unprocessed jobs: 1 650s # Pool idle thread count: 8, unprocessed jobs: 0 650s # Pool idle thread count: 8, unprocessed jobs: 0 651s # Pool idle thread count: 10, unprocessed jobs: 0 651s # Pool idle thread count: 10, unprocessed jobs: 0 651s # Pool idle thread count: 10, unprocessed jobs: 0 651s # Pool idle thread count: 10, unprocessed jobs: 0 652s # Pool idle thread count: 10, unprocessed jobs: 0 652s # Pool idle thread count: 10, unprocessed jobs: 0 652s # Pool idle thread count: 2, unprocessed jobs: 0 652s # Pool idle thread count: 2, unprocessed jobs: 0 653s # Pool idle thread count: 2, unprocessed jobs: 0 653s # Pool idle thread count: 2, unprocessed jobs: 0 653s # Pool idle thread count: 2, unprocessed jobs: 0 653s # Pool idle thread count: 2, unprocessed jobs: 0 654s # Pool idle thread count: 2, unprocessed jobs: 0 654s # Pool idle thread count: 2, unprocessed jobs: 0 654s # Pool idle thread count: 2, unprocessed jobs: 0 654s # Pool idle thread count: 2, unprocessed jobs: 0 655s # Pool idle thread count: 2, unprocessed jobs: 0 655s # Pool idle thread count: 2, unprocessed jobs: 0 655s # Executing: glib/thread-pool-slow.test 655s # Pool idle thread count: 2, unprocessed jobs: 0 655s # Pool idle thread count: 2, unprocessed jobs: 0 656s # Pool idle thread count: 2, unprocessed jobs: 0 656s # Pool idle thread count: 2, unprocessed jobs: 0 656s # Pool idle thread count: 2, unprocessed jobs: 0 656s # Pool idle thread count: 2, unprocessed jobs: 0 657s # Pool idle thread count: 2, unprocessed jobs: 0 657s # Pool idle thread count: 2, unprocessed jobs: 0 657s # Pool idle thread count: 2, unprocessed jobs: 0 657s # Pool idle thread count: 2, unprocessed jobs: 0 658s # Pool idle thread count: 2, unprocessed jobs: 0 658s # Pool idle thread count: 2, unprocessed jobs: 0 658s # Pool idle thread count: 2, unprocessed jobs: 0 658s # Pool idle thread count: 2, unprocessed jobs: 0 659s # Pool idle thread count: 2, unprocessed jobs: 0 659s # Pool idle thread count: 2, unprocessed jobs: 0 659s # Pool idle thread count: 2, unprocessed jobs: 0 659s # Pool idle thread count: 2, unprocessed jobs: 0 660s # Pool idle thread count: 2, unprocessed jobs: 0 660s # Pool idle thread count: 2, unprocessed jobs: 0 660s # Executing: glib/thread-pool-slow.test 660s # Pool idle thread count: 2, unprocessed jobs: 0 660s # Pool idle thread count: 2, unprocessed jobs: 0 661s ok - glib/thread-pool-slow.test 661s ok 7 /threadpool/idle-time 661s # slow test /threadpool/idle-time executed in 19.53 secs 661s # End of threadpool tests 661s # Running test: glib/regex.test 661s TAP version 14 661s # random seed: R02Sfb86a12333edaa021d870bd9ccd3eebe 661s 1..848 661s # Start of regex tests 661s ok 1 /regex/properties 661s ok 2 /regex/class 661s ok 3 /regex/lookahead 661s ok 4 /regex/lookbehind 661s ok 5 /regex/subpattern 661s ok 6 /regex/condition 661s ok 7 /regex/recursion 661s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=640489 661s ok 8 /regex/multiline 661s ok 9 /regex/explicit-crlf 661s ok 10 /regex/max-lookbehind 661s ok 11 /regex/compile-errors 661s ok 12 /regex/jit-unsupported-matching 661s # /regex/unmatched-named-subpattern summary: Test that unmatched subpatterns can still be queried 661s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2881 661s ok 13 /regex/unmatched-named-subpattern 661s # /regex/compiled-regex-after-jit-failure summary: Test that failed OPTIMIZE regex doesn't cause issues on subsequent matches 661s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2824 661s # GLib-DEBUG: PCRE2 JIT stack limit reached, falling back to non-optimized matching. 661s # GLib-DEBUG: PCRE2 JIT stack limit reached, falling back to non-optimized matching. 661s ok 14 /regex/compiled-regex-after-jit-failure 661s # Start of new tests 661s ok 15 /regex/new/1 661s ok 16 /regex/new/2 661s ok 17 /regex/new/3 661s ok 18 /regex/new/4 661s ok 19 /regex/new/5 661s ok 20 /regex/new/6 661s ok 21 /regex/new/7 661s ok 22 /regex/new/8 661s ok 23 /regex/new/9 661s ok 24 /regex/new/10 661s ok 25 /regex/new/11 661s ok 26 /regex/new/12 661s ok 27 /regex/new/13 661s ok 28 /regex/new/14 661s ok 29 /regex/new/15 661s ok 30 /regex/new/16 661s ok 31 /regex/new/17 661s ok 32 /regex/new/18 661s ok 33 /regex/new/19 661s ok 34 /regex/new/71 661s ok 35 /regex/new/80 661s ok 36 /regex/new/82 661s # End of new tests 661s # Start of new-check-flags tests 661s ok 37 /regex/new-check-flags/20 661s ok 38 /regex/new-check-flags/21 661s ok 39 /regex/new-check-flags/22 661s ok 40 /regex/new-check-flags/23 661s ok 41 /regex/new-check-flags/24 661s ok 42 /regex/new-check-flags/25 661s ok 43 /regex/new-check-flags/26 661s ok 44 /regex/new-check-flags/27 661s ok 45 /regex/new-check-flags/28 661s ok 46 /regex/new-check-flags/29 661s ok 47 /regex/new-check-flags/30 661s ok 48 /regex/new-check-flags/31 661s ok 49 /regex/new-check-flags/32 661s ok 50 /regex/new-check-flags/33 661s ok 51 /regex/new-check-flags/34 661s ok 52 /regex/new-check-flags/35 661s ok 53 /regex/new-check-flags/36 661s # End of new-check-flags tests 661s # Start of new-fail tests 661s ok 54 /regex/new-fail/37 661s ok 55 /regex/new-fail/38 661s ok 56 /regex/new-fail/39 661s ok 57 /regex/new-fail/40 661s ok 58 /regex/new-fail/41 661s ok 59 /regex/new-fail/42 661s ok 60 /regex/new-fail/43 661s ok 61 /regex/new-fail/44 661s ok 62 /regex/new-fail/45 661s ok 63 /regex/new-fail/46 661s ok 64 /regex/new-fail/47 661s ok 65 /regex/new-fail/48 661s ok 66 /regex/new-fail/49 661s ok 67 /regex/new-fail/50 661s ok 68 /regex/new-fail/51 661s ok 69 /regex/new-fail/52 661s ok 70 /regex/new-fail/53 661s ok 71 /regex/new-fail/54 661s ok 72 /regex/new-fail/55 661s ok 73 /regex/new-fail/56 661s ok 74 /regex/new-fail/57 661s ok 75 /regex/new-fail/58 661s ok 76 /regex/new-fail/59 661s ok 77 /regex/new-fail/60 661s ok 78 /regex/new-fail/61 661s ok 79 /regex/new-fail/62 661s ok 80 /regex/new-fail/63 661s ok 81 /regex/new-fail/64 661s ok 82 /regex/new-fail/65 661s ok 83 /regex/new-fail/66 661s ok 84 /regex/new-fail/67 661s ok 85 /regex/new-fail/68 661s ok 86 /regex/new-fail/69 661s ok 87 /regex/new-fail/70 661s ok 88 /regex/new-fail/72 661s ok 89 /regex/new-fail/73 661s ok 90 /regex/new-fail/74 661s ok 91 /regex/new-fail/75 661s ok 92 /regex/new-fail/76 661s ok 93 /regex/new-fail/77 661s ok 94 /regex/new-fail/78 661s ok 95 /regex/new-fail/79 661s ok 96 /regex/new-fail/81 661s ok 97 /regex/new-fail/83 661s ok 98 /regex/new-fail/84 661s ok 99 /regex/new-fail/85 661s ok 100 /regex/new-fail/86 661s ok 101 /regex/new-fail/87 661s ok 102 /regex/new-fail/88 661s ok 103 /regex/new-fail/89 661s ok 104 /regex/new-fail/90 661s ok 105 /regex/new-fail/91 661s # End of new-fail tests 661s # Start of match-simple tests 661s ok 106 /regex/match-simple/92 661s ok 107 /regex/match-simple/93 661s ok 108 /regex/match-simple/94 661s ok 109 /regex/match-simple/95 661s ok 110 /regex/match-simple/96 661s ok 111 /regex/match-simple/97 661s ok 112 /regex/match-simple/98 661s ok 113 /regex/match-simple/99 661s ok 114 /regex/match-simple/100 661s ok 115 /regex/match-simple/101 661s ok 116 /regex/match-simple/102 661s ok 117 /regex/match-simple/103 661s ok 118 /regex/match-simple/104 661s ok 119 /regex/match-simple/105 661s ok 120 /regex/match-simple/106 661s ok 121 /regex/match-simple/107 661s ok 122 /regex/match-simple/108 661s ok 123 /regex/match-simple/109 661s ok 124 /regex/match-simple/110 661s ok 125 /regex/match-simple/111 661s ok 126 /regex/match-simple/112 661s ok 127 /regex/match-simple/113 661s ok 128 /regex/match-simple/114 661s ok 129 /regex/match-simple/115 661s ok 130 /regex/match-simple/116 661s ok 131 /regex/match-simple/117 661s ok 132 /regex/match-simple/118 661s ok 133 /regex/match-simple/119 661s ok 134 /regex/match-simple/120 661s ok 135 /regex/match-simple/121 661s ok 136 /regex/match-simple/122 661s ok 137 /regex/match-simple/123 661s ok 138 /regex/match-simple/124 661s ok 139 /regex/match-simple/125 661s ok 140 /regex/match-simple/126 661s ok 141 /regex/match-simple/127 661s ok 142 /regex/match-simple/128 661s ok 143 /regex/match-simple/129 661s ok 144 /regex/match-simple/130 661s ok 145 /regex/match-simple/131 661s ok 146 /regex/match-simple/132 661s ok 147 /regex/match-simple/133 661s ok 148 /regex/match-simple/134 661s ok 149 /regex/match-simple/135 661s ok 150 /regex/match-simple/136 661s ok 151 /regex/match-simple/137 661s ok 152 /regex/match-simple/138 661s ok 153 /regex/match-simple/139 661s ok 154 /regex/match-simple/140 661s ok 155 /regex/match-simple/141 661s ok 156 /regex/match-simple/142 661s ok 157 /regex/match-simple/143 661s ok 158 /regex/match-simple/144 661s ok 159 /regex/match-simple/145 661s ok 160 /regex/match-simple/146 661s ok 161 /regex/match-simple/147 661s ok 162 /regex/match-simple/148 661s ok 163 /regex/match-simple/149 661s ok 164 /regex/match-simple/150 661s ok 165 /regex/match-simple/151 661s ok 166 /regex/match-simple/152 661s ok 167 /regex/match-simple/153 661s ok 168 /regex/match-simple/154 661s ok 169 /regex/match-simple/155 661s ok 170 /regex/match-simple/156 661s ok 171 /regex/match-simple/157 661s ok 172 /regex/match-simple/158 661s ok 173 /regex/match-simple/159 661s ok 174 /regex/match-simple/160 661s ok 175 /regex/match-simple/161 661s ok 176 /regex/match-simple/162 661s ok 177 /regex/match-simple/163 661s ok 178 /regex/match-simple/164 661s # End of match-simple tests 661s # Start of match-simple-optimized tests 661s ok 179 /regex/match-simple-optimized/92 661s ok 180 /regex/match-simple-optimized/93 661s ok 181 /regex/match-simple-optimized/94 661s ok 182 /regex/match-simple-optimized/95 661s ok 183 /regex/match-simple-optimized/96 661s ok 184 /regex/match-simple-optimized/97 661s ok 185 /regex/match-simple-optimized/98 661s ok 186 /regex/match-simple-optimized/99 661s ok 187 /regex/match-simple-optimized/100 661s ok 188 /regex/match-simple-optimized/101 661s ok 189 /regex/match-simple-optimized/102 661s ok 190 /regex/match-simple-optimized/103 661s ok 191 /regex/match-simple-optimized/104 661s ok 192 /regex/match-simple-optimized/105 661s ok 193 /regex/match-simple-optimized/106 661s ok 194 /regex/match-simple-optimized/107 661s ok 195 /regex/match-simple-optimized/108 661s ok 196 /regex/match-simple-optimized/109 661s ok 197 /regex/match-simple-optimized/110 661s ok 198 /regex/match-simple-optimized/111 661s ok 199 /regex/match-simple-optimized/112 661s ok 200 /regex/match-simple-optimized/113 661s ok 201 /regex/match-simple-optimized/114 661s ok 202 /regex/match-simple-optimized/115 661s ok 203 /regex/match-simple-optimized/116 661s ok 204 /regex/match-simple-optimized/117 661s ok 205 /regex/match-simple-optimized/118 661s ok 206 /regex/match-simple-optimized/119 661s ok 207 /regex/match-simple-optimized/120 661s ok 208 /regex/match-simple-optimized/121 661s ok 209 /regex/match-simple-optimized/122 661s ok 210 /regex/match-simple-optimized/123 661s ok 211 /regex/match-simple-optimized/124 661s ok 212 /regex/match-simple-optimized/125 661s ok 213 /regex/match-simple-optimized/126 661s ok 214 /regex/match-simple-optimized/127 661s ok 215 /regex/match-simple-optimized/128 661s ok 216 /regex/match-simple-optimized/129 661s ok 217 /regex/match-simple-optimized/130 661s ok 218 /regex/match-simple-optimized/131 661s ok 219 /regex/match-simple-optimized/132 661s ok 220 /regex/match-simple-optimized/133 661s ok 221 /regex/match-simple-optimized/134 661s ok 222 /regex/match-simple-optimized/135 661s ok 223 /regex/match-simple-optimized/136 661s ok 224 /regex/match-simple-optimized/137 661s ok 225 /regex/match-simple-optimized/138 661s ok 226 /regex/match-simple-optimized/139 661s ok 227 /regex/match-simple-optimized/140 661s ok 228 /regex/match-simple-optimized/141 661s ok 229 /regex/match-simple-optimized/142 661s ok 230 /regex/match-simple-optimized/143 661s ok 231 /regex/match-simple-optimized/144 661s ok 232 /regex/match-simple-optimized/145 661s ok 233 /regex/match-simple-optimized/146 661s ok 234 /regex/match-simple-optimized/147 661s ok 235 /regex/match-simple-optimized/148 661s ok 236 /regex/match-simple-optimized/149 661s ok 237 /regex/match-simple-optimized/150 661s ok 238 /regex/match-simple-optimized/151 661s ok 239 /regex/match-simple-optimized/152 661s ok 240 /regex/match-simple-optimized/153 661s ok 241 /regex/match-simple-optimized/154 661s ok 242 /regex/match-simple-optimized/155 661s ok 243 /regex/match-simple-optimized/156 661s ok 244 /regex/match-simple-optimized/157 661s ok 245 /regex/match-simple-optimized/158 661s ok 246 /regex/match-simple-optimized/159 661s ok 247 /regex/match-simple-optimized/160 661s ok 248 /regex/match-simple-optimized/161 661s ok 249 /regex/match-simple-optimized/162 661s ok 250 /regex/match-simple-optimized/163 661s # GLib-DEBUG: PCRE2 JIT stack limit reached, falling back to non-optimized matching. 661s ok 251 /regex/match-simple-optimized/164 661s # End of match-simple-optimized tests 661s # Start of match tests 661s ok 252 /regex/match/165 661s ok 253 /regex/match/166 661s ok 254 /regex/match/167 661s ok 255 /regex/match/168 661s ok 256 /regex/match/169 661s ok 257 /regex/match/170 661s ok 258 /regex/match/171 661s ok 259 /regex/match/172 661s ok 260 /regex/match/173 661s ok 261 /regex/match/174 661s ok 262 /regex/match/175 661s ok 263 /regex/match/176 661s ok 264 /regex/match/177 661s ok 265 /regex/match/178 661s ok 266 /regex/match/179 661s ok 267 /regex/match/180 661s ok 268 /regex/match/181 661s ok 269 /regex/match/182 661s ok 270 /regex/match/183 661s ok 271 /regex/match/184 661s ok 272 /regex/match/185 661s ok 273 /regex/match/186 661s ok 274 /regex/match/187 661s ok 275 /regex/match/188 661s ok 276 /regex/match/189 661s ok 277 /regex/match/190 661s ok 278 /regex/match/191 661s ok 279 /regex/match/192 661s ok 280 /regex/match/193 661s ok 281 /regex/match/194 661s ok 282 /regex/match/195 661s ok 283 /regex/match/196 661s ok 284 /regex/match/197 661s ok 285 /regex/match/198 661s ok 286 /regex/match/199 661s ok 287 /regex/match/200 661s ok 288 /regex/match/201 661s ok 289 /regex/match/202 661s ok 290 /regex/match/203 661s ok 291 /regex/match/204 661s ok 292 /regex/match/205 661s ok 293 /regex/match/206 661s ok 294 /regex/match/207 661s ok 295 /regex/match/208 661s ok 296 /regex/match/209 661s ok 297 /regex/match/210 661s ok 298 /regex/match/211 661s ok 299 /regex/match/212 661s ok 300 /regex/match/213 661s ok 301 /regex/match/214 661s ok 302 /regex/match/215 661s ok 303 /regex/match/216 661s ok 304 /regex/match/217 661s ok 305 /regex/match/218 661s ok 306 /regex/match/219 661s ok 307 /regex/match/220 661s ok 308 /regex/match/221 661s ok 309 /regex/match/222 661s ok 310 /regex/match/223 661s ok 311 /regex/match/224 661s ok 312 /regex/match/225 661s ok 313 /regex/match/226 661s ok 314 /regex/match/227 661s ok 315 /regex/match/228 661s ok 316 /regex/match/229 661s ok 317 /regex/match/230 661s ok 318 /regex/match/231 661s ok 319 /regex/match/232 661s ok 320 /regex/match/233 661s ok 321 /regex/match/234 661s ok 322 /regex/match/235 661s ok 323 /regex/match/236 661s ok 324 /regex/match/237 661s ok 325 /regex/match/238 661s ok 326 /regex/match/239 661s ok 327 /regex/match/240 661s ok 328 /regex/match/241 661s ok 329 /regex/match/242 661s ok 330 /regex/match/243 661s ok 331 /regex/match/244 661s ok 332 /regex/match/245 661s ok 333 /regex/match/246 661s ok 334 /regex/match/partial281 661s ok 335 /regex/match/partial282 661s ok 336 /regex/match/partial283 661s ok 337 /regex/match/partial284 661s ok 338 /regex/match/partial285 661s ok 339 /regex/match/partial286 661s ok 340 /regex/match/partial287 661s ok 341 /regex/match/partial288 661s ok 342 /regex/match/partial289 661s ok 343 /regex/match/partial290 661s ok 344 /regex/match/partial291 661s ok 345 /regex/match/partial292 661s ok 346 /regex/match/partial293 661s ok 347 /regex/match/partial294 661s ok 348 /regex/match/partial295 661s ok 349 /regex/match/partial296 661s ok 350 /regex/match/partial297 661s ok 351 /regex/match/partial298 661s ok 352 /regex/match/partial299 661s ok 353 /regex/match/partial300 661s ok 354 /regex/match/partial301 661s ok 355 /regex/match/partial302 661s # Start of next0 tests 661s ok 356 /regex/match/next0/247 661s ok 357 /regex/match/next0/248 661s ok 358 /regex/match/next0/249 661s ok 359 /regex/match/next0/250 661s # End of next0 tests 661s # Start of next1 tests 661s ok 360 /regex/match/next1/251 661s ok 361 /regex/match/next1/252 661s ok 362 /regex/match/next1/253 661s ok 363 /regex/match/next1/254 661s ok 364 /regex/match/next1/255 661s # End of next1 tests 661s # Start of next2 tests 661s ok 365 /regex/match/next2/256 661s ok 366 /regex/match/next2/257 661s ok 367 /regex/match/next2/258 661s ok 368 /regex/match/next2/259 661s ok 369 /regex/match/next2/260 661s ok 370 /regex/match/next2/261 661s ok 371 /regex/match/next2/262 661s ok 372 /regex/match/next2/263 661s # End of next2 tests 661s # Start of next3 tests 661s ok 373 /regex/match/next3/264 661s ok 374 /regex/match/next3/265 661s ok 375 /regex/match/next3/266 661s ok 376 /regex/match/next3/267 661s ok 377 /regex/match/next3/268 661s ok 378 /regex/match/next3/269 661s # End of next3 tests 661s # Start of next4 tests 661s ok 379 /regex/match/next4/270 661s # End of next4 tests 661s # Start of count tests 661s ok 380 /regex/match/count/271 661s ok 381 /regex/match/count/272 661s ok 382 /regex/match/count/273 661s ok 383 /regex/match/count/274 661s ok 384 /regex/match/count/275 661s ok 385 /regex/match/count/276 661s ok 386 /regex/match/count/277 661s ok 387 /regex/match/count/278 661s ok 388 /regex/match/count/279 661s ok 389 /regex/match/count/280 661s # End of count tests 661s # Start of count-optimized tests 661s ok 390 /regex/match/count-optimized/271 661s ok 391 /regex/match/count-optimized/272 661s ok 392 /regex/match/count-optimized/273 661s ok 393 /regex/match/count-optimized/274 661s ok 394 /regex/match/count-optimized/275 661s ok 395 /regex/match/count-optimized/276 661s ok 396 /regex/match/count-optimized/277 661s ok 397 /regex/match/count-optimized/278 661s ok 398 /regex/match/count-optimized/279 661s ok 399 /regex/match/count-optimized/280 661s # End of count-optimized tests 661s # Start of partial-optimized tests 661s ok 400 /regex/match/partial-optimized/281 661s ok 401 /regex/match/partial-optimized/282 661s ok 402 /regex/match/partial-optimized/283 661s ok 403 /regex/match/partial-optimized/284 661s ok 404 /regex/match/partial-optimized/285 661s ok 405 /regex/match/partial-optimized/286 661s ok 406 /regex/match/partial-optimized/287 661s ok 407 /regex/match/partial-optimized/288 661s ok 408 /regex/match/partial-optimized/289 661s ok 409 /regex/match/partial-optimized/290 661s ok 410 /regex/match/partial-optimized/291 661s ok 411 /regex/match/partial-optimized/292 661s ok 412 /regex/match/partial-optimized/293 661s ok 413 /regex/match/partial-optimized/294 661s ok 414 /regex/match/partial-optimized/295 661s ok 415 /regex/match/partial-optimized/296 661s ok 416 /regex/match/partial-optimized/297 661s ok 417 /regex/match/partial-optimized/298 661s ok 418 /regex/match/partial-optimized/299 661s ok 419 /regex/match/partial-optimized/300 661s ok 420 /regex/match/partial-optimized/301 661s ok 421 /regex/match/partial-optimized/302 661s # End of partial-optimized tests 661s # Start of subpattern tests 661s ok 422 /regex/match/subpattern/303 661s ok 423 /regex/match/subpattern/304 661s ok 424 /regex/match/subpattern/305 661s ok 425 /regex/match/subpattern/306 661s ok 426 /regex/match/subpattern/307 661s ok 427 /regex/match/subpattern/308 661s ok 428 /regex/match/subpattern/309 661s ok 429 /regex/match/subpattern/310 661s ok 430 /regex/match/subpattern/311 661s ok 431 /regex/match/subpattern/312 661s ok 432 /regex/match/subpattern/313 661s ok 433 /regex/match/subpattern/314 661s ok 434 /regex/match/subpattern/315 661s # Start of named tests 661s # Start of dupnames tests 661s ok 435 /regex/match/subpattern/named/dupnames/325 661s ok 436 /regex/match/subpattern/named/dupnames/326 661s ok 437 /regex/match/subpattern/named/dupnames/327 661s ok 438 /regex/match/subpattern/named/dupnames/328 661s ok 439 /regex/match/subpattern/named/dupnames/329 661s # End of dupnames tests 661s # End of named tests 661s # End of subpattern tests 661s # Start of subpattern-optimized tests 661s ok 440 /regex/match/subpattern-optimized/303 661s ok 441 /regex/match/subpattern-optimized/304 661s ok 442 /regex/match/subpattern-optimized/305 661s ok 443 /regex/match/subpattern-optimized/306 661s ok 444 /regex/match/subpattern-optimized/307 661s ok 445 /regex/match/subpattern-optimized/308 661s ok 446 /regex/match/subpattern-optimized/309 661s ok 447 /regex/match/subpattern-optimized/310 661s ok 448 /regex/match/subpattern-optimized/311 661s ok 449 /regex/match/subpattern-optimized/312 661s ok 450 /regex/match/subpattern-optimized/313 661s ok 451 /regex/match/subpattern-optimized/314 661s ok 452 /regex/match/subpattern-optimized/315 661s # End of subpattern-optimized tests 661s # Start of named tests 661s # Start of subpattern tests 661s ok 453 /regex/match/named/subpattern/316 661s ok 454 /regex/match/named/subpattern/317 661s ok 455 /regex/match/named/subpattern/318 661s ok 456 /regex/match/named/subpattern/319 661s ok 457 /regex/match/named/subpattern/320 661s ok 458 /regex/match/named/subpattern/321 661s ok 459 /regex/match/named/subpattern/322 661s ok 460 /regex/match/named/subpattern/323 661s ok 461 /regex/match/named/subpattern/324 661s ok 462 /regex/match/named/subpattern/330 661s ok 463 /regex/match/named/subpattern/331 661s ok 464 /regex/match/named/subpattern/332 661s ok 465 /regex/match/named/subpattern/333 661s ok 466 /regex/match/named/subpattern/334 661s # End of subpattern tests 661s # End of named tests 661s # End of match tests 661s # Start of match-optimized tests 661s ok 467 /regex/match-optimized/165 661s ok 468 /regex/match-optimized/166 661s ok 469 /regex/match-optimized/167 661s ok 470 /regex/match-optimized/168 661s ok 471 /regex/match-optimized/169 661s ok 472 /regex/match-optimized/170 661s ok 473 /regex/match-optimized/171 661s ok 474 /regex/match-optimized/172 661s ok 475 /regex/match-optimized/173 661s ok 476 /regex/match-optimized/174 661s ok 477 /regex/match-optimized/175 661s ok 478 /regex/match-optimized/176 661s ok 479 /regex/match-optimized/177 661s ok 480 /regex/match-optimized/178 661s ok 481 /regex/match-optimized/179 661s ok 482 /regex/match-optimized/180 661s ok 483 /regex/match-optimized/181 661s ok 484 /regex/match-optimized/182 661s ok 485 /regex/match-optimized/183 661s ok 486 /regex/match-optimized/184 661s ok 487 /regex/match-optimized/185 661s ok 488 /regex/match-optimized/186 661s ok 489 /regex/match-optimized/187 661s ok 490 /regex/match-optimized/188 661s ok 491 /regex/match-optimized/189 661s ok 492 /regex/match-optimized/190 661s ok 493 /regex/match-optimized/191 661s ok 494 /regex/match-optimized/192 661s ok 495 /regex/match-optimized/193 661s ok 496 /regex/match-optimized/194 661s ok 497 /regex/match-optimized/195 661s ok 498 /regex/match-optimized/196 661s ok 499 /regex/match-optimized/197 661s ok 500 /regex/match-optimized/198 661s ok 501 /regex/match-optimized/199 661s ok 502 /regex/match-optimized/200 661s ok 503 /regex/match-optimized/201 661s ok 504 /regex/match-optimized/202 661s ok 505 /regex/match-optimized/203 661s ok 506 /regex/match-optimized/204 661s ok 507 /regex/match-optimized/205 661s ok 508 /regex/match-optimized/206 661s ok 509 /regex/match-optimized/207 661s ok 510 /regex/match-optimized/208 661s ok 511 /regex/match-optimized/209 661s ok 512 /regex/match-optimized/210 661s ok 513 /regex/match-optimized/211 661s ok 514 /regex/match-optimized/212 661s ok 515 /regex/match-optimized/213 661s ok 516 /regex/match-optimized/214 661s ok 517 /regex/match-optimized/215 661s ok 518 /regex/match-optimized/216 661s ok 519 /regex/match-optimized/217 661s ok 520 /regex/match-optimized/218 661s ok 521 /regex/match-optimized/219 661s ok 522 /regex/match-optimized/220 661s ok 523 /regex/match-optimized/221 661s ok 524 /regex/match-optimized/222 661s ok 525 /regex/match-optimized/223 661s ok 526 /regex/match-optimized/224 661s ok 527 /regex/match-optimized/225 661s ok 528 /regex/match-optimized/226 661s ok 529 /regex/match-optimized/227 661s ok 530 /regex/match-optimized/228 661s ok 531 /regex/match-optimized/229 661s ok 532 /regex/match-optimized/230 661s ok 533 /regex/match-optimized/231 661s ok 534 /regex/match-optimized/232 661s ok 535 /regex/match-optimized/233 661s ok 536 /regex/match-optimized/234 661s ok 537 /regex/match-optimized/235 661s ok 538 /regex/match-optimized/236 661s ok 539 /regex/match-optimized/237 661s ok 540 /regex/match-optimized/238 661s ok 541 /regex/match-optimized/239 661s ok 542 /regex/match-optimized/240 661s ok 543 /regex/match-optimized/241 661s ok 544 /regex/match-optimized/242 661s ok 545 /regex/match-optimized/243 661s ok 546 /regex/match-optimized/244 661s ok 547 /regex/match-optimized/245 661s ok 548 /regex/match-optimized/246 661s # End of match-optimized tests 661s # Start of fetch-all0 tests 661s ok 549 /regex/fetch-all0/335 661s ok 550 /regex/fetch-all0/336 661s # End of fetch-all0 tests 661s # Start of fetch-all1 tests 661s ok 551 /regex/fetch-all1/337 661s ok 552 /regex/fetch-all1/338 661s ok 553 /regex/fetch-all1/339 661s # End of fetch-all1 tests 661s # Start of fetch-all2 tests 661s ok 554 /regex/fetch-all2/340 661s ok 555 /regex/fetch-all2/341 661s ok 556 /regex/fetch-all2/342 661s # End of fetch-all2 tests 661s # Start of fetch-all3 tests 661s ok 557 /regex/fetch-all3/343 661s ok 558 /regex/fetch-all3/344 661s ok 559 /regex/fetch-all3/345 661s ok 560 /regex/fetch-all3/346 661s ok 561 /regex/fetch-all3/347 661s # End of fetch-all3 tests 661s # Start of split tests 661s # Start of simple0 tests 661s ok 562 /regex/split/simple0/348 661s ok 563 /regex/split/simple0/349 661s ok 564 /regex/split/simple0/364 661s ok 565 /regex/split/simple0/365 661s # End of simple0 tests 661s # Start of simple1 tests 661s ok 566 /regex/split/simple1/350 661s ok 567 /regex/split/simple1/351 661s # End of simple1 tests 661s # Start of simple2 tests 661s ok 568 /regex/split/simple2/352 661s ok 569 /regex/split/simple2/358 661s ok 570 /regex/split/simple2/360 661s # End of simple2 tests 661s # Start of simple3 tests 661s ok 571 /regex/split/simple3/353 661s ok 572 /regex/split/simple3/354 661s ok 573 /regex/split/simple3/355 661s ok 574 /regex/split/simple3/356 661s ok 575 /regex/split/simple3/357 661s ok 576 /regex/split/simple3/359 661s ok 577 /regex/split/simple3/361 661s ok 578 /regex/split/simple3/362 661s ok 579 /regex/split/simple3/363 661s # End of simple3 tests 661s # End of split tests 661s # Start of split0 tests 661s ok 580 /regex/split0/366 661s ok 581 /regex/split0/368 661s # End of split0 tests 661s # Start of full-split0 tests 661s ok 582 /regex/full-split0/367 661s ok 583 /regex/full-split0/369 661s ok 584 /regex/full-split0/370 661s ok 585 /regex/full-split0/371 661s ok 586 /regex/full-split0/372 661s # End of full-split0 tests 661s # Start of split1 tests 661s ok 587 /regex/split1/373 661s ok 588 /regex/split1/376 661s # End of split1 tests 661s # Start of full-split1 tests 661s ok 589 /regex/full-split1/374 661s ok 590 /regex/full-split1/375 661s ok 591 /regex/full-split1/377 661s ok 592 /regex/full-split1/378 661s ok 593 /regex/full-split1/404 661s # End of full-split1 tests 661s # Start of split2 tests 661s ok 594 /regex/split2/379 661s ok 595 /regex/split2/383 661s ok 596 /regex/split2/395 661s # End of split2 tests 661s # Start of full-split2 tests 661s ok 597 /regex/full-split2/380 661s ok 598 /regex/full-split2/381 661s ok 599 /regex/full-split2/382 661s ok 600 /regex/full-split2/384 661s ok 601 /regex/full-split2/396 661s ok 602 /regex/full-split2/399 661s ok 603 /regex/full-split2/405 661s # End of full-split2 tests 661s # Start of split3 tests 661s ok 604 /regex/split3/385 661s ok 605 /regex/split3/387 661s ok 606 /regex/split3/389 661s ok 607 /regex/split3/391 661s ok 608 /regex/split3/393 661s ok 609 /regex/split3/397 661s ok 610 /regex/split3/400 661s ok 611 /regex/split3/402 661s # End of split3 tests 661s # Start of full-split3 tests 661s ok 612 /regex/full-split3/386 661s ok 613 /regex/full-split3/388 661s ok 614 /regex/full-split3/390 661s ok 615 /regex/full-split3/392 661s ok 616 /regex/full-split3/394 661s ok 617 /regex/full-split3/398 661s ok 618 /regex/full-split3/401 661s ok 619 /regex/full-split3/403 661s ok 620 /regex/full-split3/406 661s ok 621 /regex/full-split3/407 661s # End of full-split3 tests 661s # Start of check-repacement tests 661s ok 622 /regex/check-repacement/408 661s ok 623 /regex/check-repacement/409 661s ok 624 /regex/check-repacement/410 661s ok 625 /regex/check-repacement/411 661s ok 626 /regex/check-repacement/412 661s ok 627 /regex/check-repacement/413 661s ok 628 /regex/check-repacement/414 661s ok 629 /regex/check-repacement/415 661s # End of check-repacement tests 661s # Start of expand tests 661s ok 630 /regex/expand/416 661s ok 631 /regex/expand/417 661s ok 632 /regex/expand/418 661s ok 633 /regex/expand/419 661s ok 634 /regex/expand/420 661s ok 635 /regex/expand/421 661s ok 636 /regex/expand/422 661s ok 637 /regex/expand/423 661s ok 638 /regex/expand/424 661s ok 639 /regex/expand/425 661s ok 640 /regex/expand/426 661s ok 641 /regex/expand/427 661s ok 642 /regex/expand/428 661s ok 643 /regex/expand/429 661s ok 644 /regex/expand/430 661s ok 645 /regex/expand/431 661s ok 646 /regex/expand/432 661s ok 647 /regex/expand/433 661s ok 648 /regex/expand/434 661s ok 649 /regex/expand/435 661s ok 650 /regex/expand/436 661s ok 651 /regex/expand/437 661s ok 652 /regex/expand/438 661s ok 653 /regex/expand/439 661s ok 654 /regex/expand/440 661s ok 655 /regex/expand/441 661s ok 656 /regex/expand/442 661s ok 657 /regex/expand/443 661s ok 658 /regex/expand/444 661s ok 659 /regex/expand/445 661s ok 660 /regex/expand/446 661s ok 661 /regex/expand/447 661s ok 662 /regex/expand/448 661s ok 663 /regex/expand/449 661s ok 664 /regex/expand/450 661s ok 665 /regex/expand/451 661s ok 666 /regex/expand/452 661s ok 667 /regex/expand/453 661s ok 668 /regex/expand/454 661s ok 669 /regex/expand/455 661s ok 670 /regex/expand/456 661s ok 671 /regex/expand/457 661s ok 672 /regex/expand/458 661s ok 673 /regex/expand/459 661s ok 674 /regex/expand/460 661s ok 675 /regex/expand/461 661s ok 676 /regex/expand/462 661s ok 677 /regex/expand/463 661s ok 678 /regex/expand/464 661s ok 679 /regex/expand/465 661s ok 680 /regex/expand/466 661s ok 681 /regex/expand/467 661s ok 682 /regex/expand/468 661s ok 683 /regex/expand/469 661s ok 684 /regex/expand/470 661s ok 685 /regex/expand/471 661s ok 686 /regex/expand/472 661s ok 687 /regex/expand/473 661s ok 688 /regex/expand/474 661s ok 689 /regex/expand/475 661s ok 690 /regex/expand/476 661s ok 691 /regex/expand/477 661s ok 692 /regex/expand/478 661s ok 693 /regex/expand/479 661s ok 694 /regex/expand/480 661s ok 695 /regex/expand/481 661s # End of expand tests 661s # Start of replace tests 661s ok 696 /regex/replace/482 661s ok 697 /regex/replace/483 661s ok 698 /regex/replace/484 661s ok 699 /regex/replace/485 661s ok 700 /regex/replace/486 661s ok 701 /regex/replace/487 661s ok 702 /regex/replace/488 661s ok 703 /regex/replace/489 661s ok 704 /regex/replace/490 661s ok 705 /regex/replace/491 661s ok 706 /regex/replace/492 661s ok 707 /regex/replace/493 661s ok 708 /regex/replace/494 661s ok 709 /regex/replace/495 661s ok 710 /regex/replace/496 661s ok 711 /regex/replace/497 661s ok 712 /regex/replace/498 661s ok 713 /regex/replace/499 661s ok 714 /regex/replace/500 661s ok 715 /regex/replace/501 661s ok 716 /regex/replace/502 661s ok 717 /regex/replace/503 661s ok 718 /regex/replace/504 661s ok 719 /regex/replace/505 661s ok 720 /regex/replace/506 661s ok 721 /regex/replace/507 661s ok 722 /regex/replace/508 661s ok 723 /regex/replace/509 661s # End of replace tests 661s # Start of replace-optimized tests 661s ok 724 /regex/replace-optimized/482 661s ok 725 /regex/replace-optimized/483 661s ok 726 /regex/replace-optimized/484 661s ok 727 /regex/replace-optimized/485 661s ok 728 /regex/replace-optimized/486 661s ok 729 /regex/replace-optimized/487 661s ok 730 /regex/replace-optimized/488 661s ok 731 /regex/replace-optimized/489 661s ok 732 /regex/replace-optimized/490 661s ok 733 /regex/replace-optimized/491 661s ok 734 /regex/replace-optimized/492 661s ok 735 /regex/replace-optimized/493 661s ok 736 /regex/replace-optimized/494 661s ok 737 /regex/replace-optimized/495 661s ok 738 /regex/replace-optimized/496 661s ok 739 /regex/replace-optimized/497 661s ok 740 /regex/replace-optimized/498 661s ok 741 /regex/replace-optimized/499 661s ok 742 /regex/replace-optimized/500 661s ok 743 /regex/replace-optimized/501 661s ok 744 /regex/replace-optimized/502 661s ok 745 /regex/replace-optimized/503 661s ok 746 /regex/replace-optimized/504 661s ok 747 /regex/replace-optimized/505 661s ok 748 /regex/replace-optimized/506 661s ok - glib/regex.test 661s # Running test: glib/gio-tool.py.test 661s ok 749 /regex/replace-optimized/507 661s ok 750 /regex/replace-optimized/508 661s ok 751 /regex/replace-optimized/509 661s # End of replace-optimized tests 661s # Start of replace-literally tests 661s ok 752 /regex/replace-literally/510 661s ok 753 /regex/replace-literally/511 661s ok 754 /regex/replace-literally/512 661s ok 755 /regex/replace-literally/513 661s ok 756 /regex/replace-literally/514 661s ok 757 /regex/replace-literally/515 661s ok 758 /regex/replace-literally/516 661s ok 759 /regex/replace-literally/517 661s ok 760 /regex/replace-literally/518 661s ok 761 /regex/replace-literally/519 661s ok 762 /regex/replace-literally/520 661s ok 763 /regex/replace-literally/521 661s ok 764 /regex/replace-literally/522 661s ok 765 /regex/replace-literally/523 661s ok 766 /regex/replace-literally/524 661s ok 767 /regex/replace-literally/525 661s ok 768 /regex/replace-literally/526 661s ok 769 /regex/replace-literally/527 661s ok 770 /regex/replace-literally/528 661s ok 771 /regex/replace-literally/529 661s # End of replace-literally tests 661s # Start of string-number tests 661s ok 772 /regex/string-number/530 661s ok 773 /regex/string-number/531 661s ok 774 /regex/string-number/532 661s ok 775 /regex/string-number/533 661s ok 776 /regex/string-number/534 661s ok 777 /regex/string-number/535 661s ok 778 /regex/string-number/536 661s ok 779 /regex/string-number/537 661s ok 780 /regex/string-number/538 661s ok 781 /regex/string-number/539 661s ok 782 /regex/string-number/540 661s ok 783 /regex/string-number/541 661s ok 784 /regex/string-number/542 661s ok 785 /regex/string-number/543 661s ok 786 /regex/string-number/544 661s # End of string-number tests 661s # Start of escape_nul tests 661s ok 787 /regex/escape_nul/545 661s ok 788 /regex/escape_nul/546 661s ok 789 /regex/escape_nul/547 661s ok 790 /regex/escape_nul/548 661s ok 791 /regex/escape_nul/549 661s ok 792 /regex/escape_nul/550 661s ok 793 /regex/escape_nul/551 661s ok 794 /regex/escape_nul/552 661s ok 795 /regex/escape_nul/553 661s ok 796 /regex/escape_nul/554 661s ok 797 /regex/escape_nul/555 661s ok 798 /regex/escape_nul/556 661s ok 799 /regex/escape_nul/557 661s ok 800 /regex/escape_nul/558 661s ok 801 /regex/escape_nul/559 661s # End of escape_nul tests 661s # Start of escape tests 661s ok 802 /regex/escape/560 661s ok 803 /regex/escape/561 661s ok 804 /regex/escape/562 661s ok 805 /regex/escape/563 661s ok 806 /regex/escape/564 661s ok 807 /regex/escape/565 661s ok 808 /regex/escape/566 661s ok 809 /regex/escape/567 661s ok 810 /regex/escape/568 661s ok 811 /regex/escape/569 661s ok 812 /regex/escape/570 661s ok 813 /regex/escape/571 661s ok 814 /regex/escape/572 661s ok 815 /regex/escape/573 661s ok 816 /regex/escape/574 661s ok 817 /regex/escape/575 661s ok 818 /regex/escape/576 661s ok 819 /regex/escape/577 661s # End of escape tests 661s # Start of match-all0 tests 661s ok 820 /regex/match-all0/578 661s ok 821 /regex/match-all0/580 661s # End of match-all0 tests 661s # Start of match-all-full0 tests 661s ok 822 /regex/match-all-full0/579 661s ok 823 /regex/match-all-full0/581 661s ok 824 /regex/match-all-full0/582 661s ok 825 /regex/match-all-full0/583 661s # End of match-all-full0 tests 661s # Start of match-all1 tests 661s ok 826 /regex/match-all1/584 661s ok 827 /regex/match-all1/586 661s ok 828 /regex/match-all1/591 661s # End of match-all1 tests 661s # Start of match-all-full1 tests 661s ok 829 /regex/match-all-full1/585 661s ok 830 /regex/match-all-full1/587 661s ok 831 /regex/match-all-full1/588 661s ok 832 /regex/match-all-full1/589 661s ok 833 /regex/match-all-full1/590 661s ok 834 /regex/match-all-full1/592 661s # End of match-all-full1 tests 661s # Start of match-all2 tests 661s ok 835 /regex/match-all2/593 661s ok 836 /regex/match-all2/595 661s ok 837 /regex/match-all2/597 661s # End of match-all2 tests 661s # Start of match-all-full2 tests 661s ok 838 /regex/match-all-full2/594 661s ok 839 /regex/match-all-full2/596 661s ok 840 /regex/match-all-full2/598 661s # End of match-all-full2 tests 661s # Start of match-all3 tests 661s ok 841 /regex/match-all3/599 661s ok 842 /regex/match-all3/601 661s # End of match-all3 tests 661s # Start of match-all-full3 tests 661s ok 843 /regex/match-all-full3/600 661s ok 844 /regex/match-all-full3/602 661s # End of match-all-full3 tests 661s # Start of match-notempty tests 661s ok 845 /regex/match-notempty/603 661s # End of match-notempty tests 661s # Start of match-notempty-optimized tests 661s ok 846 /regex/match-notempty-optimized/603 661s # End of match-notempty-optimized tests 661s # Start of match-notempty-atstart tests 661s ok 847 /regex/match-notempty-atstart/604 661s # End of match-notempty-atstart tests 661s # Start of match-notempty-atstart-optimized tests 661s ok 848 /regex/match-notempty-atstart-optimized/604 661s # End of match-notempty-atstart-optimized tests 661s # End of regex tests 661s TAP version 13 661s ok 1 __main__.TestGioTool.test_help 661s # gio: /usr/bin/gio 661s # tmpdir: /tmp/tmp84dar_7g 661s # Running: ['/usr/bin/gio', '--help'] 661s # Return code: 0 661s # Output: 661s # Usage: 661s # gio COMMAND [ARGS…] 661s # 661s # Commands: 661s # help Print help 661s # version Print version 661s # cat Concatenate files to standard output 661s # copy Copy one or more files 661s # info Show information about locations 661s # launch Launch an application from a desktop file 661s # list List the contents of locations 661s # mime Get or set the handler for a mimetype 661s # mkdir Create directories 661s # monitor Monitor files and directories for changes 661s # mount Mount or unmount the locations 661s # move Move one or more files 661s # open Open files with the default application 661s # rename Rename a file 661s # remove Delete one or more files 661s # save Read from standard input and save 661s # set Set a file attribute 661s # trash Move files or directories to the trash 661s # tree Lists the contents of locations in a tree 661s # 661s # Use “gio help COMMAND†to get detailed help. 661s # Error: 661s # 661s # Running: ['/usr/bin/gio', 'help'] 661s # Return code: 0 661s # Output: 661s # Usage: 661s # gio COMMAND [ARGS…] 661s # 661s # Commands: 661s # help Print help 661s # version Print version 661s # cat Concatenate files to standard output 661s # copy Copy one or more files 661s # info Show information about locations 661s # launch Launch an application from a desktop file 661s # list List the contents of locations 661s # mime Get or set the handler for a mimetype 661s # mkdir Create directories 661s # monitor Monitor files and directories for changes 661s # mount Mount or unmount the locations 661s # move Move one or more files 661s # open Open files with the default application 661s # rename Rename a file 661s # remove Delete one or more files 661s # save Read from standard input and save 661s # set Set a file attribute 661s # trash Move files or directories to the trash 661s # tree Lists the contents of locations in a tree 661s # 661s # Use “gio help COMMAND†to get detailed help. 661s # Error: 661s ok 2 __main__.TestGioTool.test_info_non_default_attributes 661s # gio: /usr/bin/gio 661s # tmpdir: /tmp/tmpq95o1iup 661s # Running: ['/usr/bin/gio', 'info', '--attributes=standard::content-type', '/tmp/tmpq95o1iup/tmpp3g3rt_2'] 661s # Return code: 0 661s # Output: 661s # uri: file:///tmp/tmpq95o1iup/tmpp3g3rt_2 661s # local path: /tmp/tmpq95o1iup/tmpp3g3rt_2 661s # unix mount: /dev/vda1 / ext4 rw,relatime,discard,errors=remount-ro,commit=30 661s # attributes: 661s # standard::content-type: application/x-zerosize 661s # Error: 661s ok 3 __main__.TestGioTool.test_no_args 661s # gio: /usr/bin/gio 661s # tmpdir: /tmp/tmpr2em9d0r 661s # Running: ['/usr/bin/gio'] 661s # Return code: 1 661s # Output: 661s # 661s # Error: 661s # Usage: 661s # gio COMMAND [ARGS…] 661s # 661s # Commands: 661s # help Print help 661s # version Print version 661s # cat Concatenate files to standard output 661s # copy Copy one or more files 661s # info Show information about locations 661s # launch Launch an application from a desktop file 661s # list List the contents of locations 661s # mime Get or set the handler for a mimetype 661s # mkdir Create directories 661s # monitor Monitor files and directories for changes 661s # mount Mount or unmount the locations 661s # move Move one or more files 661s # open Open files with the default application 661s # rename Rename a file 661s # remove Delete one or more files 661s # save Read from standard input and save 661s # set Set a file attribute 661s # trash Move files or directories to the trash 661s # tree Lists the contents of locations in a tree 661s # 661s # Use “gio help COMMAND†to get detailed help. 661s 1..3 661s ok - glib/gio-tool.py.test 661s # Running test: glib/override.test 661s TAP version 14 661s # random seed: R02Sbc20dd449956afa11fbfa987c96bd474 661s 1..1 661s # Start of gobject tests 661s # *** emitting foo on a TestA instance 661s # Expecting: TestA::foo,TestI::foo 661s # Got: TestA::foo,TestI::foo 661s # *** emitting bar on a TestA instance 661s # Expecting: TestA::bar 661s # Got: TestA::bar 661s # *** emitting baz on a TestA instance 661s # Expecting: TestA::baz 661s # Got: TestA::baz 661s # *** emitting foo on a TestB instance 661s # Expecting: TestB::foo,TestA::foo,TestI::foo 661s # Got: TestB::foo,TestA::foo,TestI::foo 661s # *** emitting bar on a TestB instance 661s # Expecting: TestB::bar,TestA::bar 661s # Got: TestB::bar,TestA::bar 661s # *** emitting baz on a TestB instance 661s # Expecting: TestB::baz,TestA::baz 661s # Got: TestB::baz,TestA::baz 661s # *** emitting foo on a TestC instance 661s # Expecting: TestC::foo,TestB::foo,TestA::foo,TestI::foo 661s # Got: TestC::foo,TestB::foo,TestA::foo,TestI::foo 661s # *** emitting bar on a TestC instance 661s # Expecting: TestC::bar,TestB::bar,TestA::bar 661s # Got: TestC::bar,TestB::bar,TestA::bar 661s # *** emitting baz on a TestC instance 661s # Expecting: TestC::baz,TestB::baz,TestA::baz 661s # Got: TestC::baz,TestB::baz,TestA::baz 661s ok 1 /gobject/override 661s # End of gobject tests 661s ok - glib/override.test 661s # Running test: glib/object-info.test 661s TAP version 14 661s # random seed: R02S369e9fbcb074d440ee961e4639d56b51 661s 1..2 661s # Start of object-info tests 661s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/home 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/cache 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/system-config1:/tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/system-config2 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/config 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/system-data1:/tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/system-data2 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/data 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/state 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_object-info_3PL052/object-info/find-method-using-interfaces/.dirs/runtime 661s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 661s ok 1 /object-info/find-method-using-interfaces 661s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/home 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/cache 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/system-config1:/tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/system-config2 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/config 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/system-data1:/tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/system-data2 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/data 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/state 661s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_object-info_3PL052/object-info/find-vfunc-using-interfaces/.dirs/runtime 661s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 661s ok 2 /object-info/find-vfunc-using-interfaces 661s # End of object-info tests 661s ok - glib/object-info.test 661s # Running test: glib/properties-refcount1.test 661s TAP version 14 661s # random seed: R02S3b125a80ee69daafd99154f16a7b0071 661s 1..1 661s # Start of gobject tests 661s # Start of refcount tests 661s # .c 661s # .d 661s # .f 661s # .e 661s # .b 661s # .d 661s # .c 661s # .f 661s # .b 661s # .c 661s # .d 661s # .e 661s # .c 661s # .d 661s # .f 661s # .b 661s # .e 661s # .c 661s # .d 661s # .f 661s # .b 661s # .e 661s # .c 661s # .d 661s # .f 661s # .c 661s # .e 661s # .d 661s # .b 661s # .f 661s # .e 661s # .c 661s # .d 661s # .f 661s # .b 661s # .e 661s # .b 661s # .d 661s # .c 661s # .f 661s # .e 661s # .d 661s # .b 661s # .f 661s # .c 661s # .e 661s # .d 661s # .b 661s # .c 661s # .f 661s # .e 661s # .d 661s # .b 661s # .c 662s # .f 662s # .d 662s # .e 662s # .b 662s # .e 662s # .d 662s # .f 662s # .c 662s # .d 662s # .e 662s # .b 662s # .f 662s # .c 662s # .e 662s # .d 662s # .b 662s # .e 662s # .f 662s # .c 662s # .d 662s # .b 662s # .c 662s # .e 662s # .f 662s # .b 662s # .d 662s # .e 662s # .f 662s # .c 662s # .b 662s # .d 662s # .b 662s # .e 662s # .f 662s # .d 662s # .c 662s # .b 662s # .d 662s # .e 662s # .f 662s # .c 662s # .f 662s # .b 662s # .d 662s # .c 662s # .e 662s # .f 662s # .c 662s # .b 662s # .d 662s # .e 662s # .f 662s # .d 662s # .e 662s # .c 662s # .b 662s # .f 662s # .c 662s # .d 662s # .b 662s # .e 662s # .f 662s # .e 662s # .b 662s # .c 662s # .d 662s # .f 662s # .e 662s # .b 662s # .c 662s # .d 662s # .f 662s # .e 662s # .f 662s # .d 662s # .e 662s # .c 662s # .b 662s # .d 662s # .c 662s # .f 662s # .b 662s # .e 663s # .d 663s # .b 663s # .c 663s # .f 663s # .e 663s # .c 663s # .e 663s # .b 663s # .f 663s # .d 663s # .b 663s # .c 663s # .e 663s # .f 663s # .d 663s # .c 663s # .e 663s # .b 663s # .f 663s # .d 663s # .c 663s # .e 663s # .f 663s # .b 663s # .d 663s # .c 663s # .e 663s # .b 663s # .f 663s # .d 663s # .b 663s # .c 663s # .e 663s # .f 663s # .d 663s # .e 663s # .f 663s # .b 663s # .c 663s # .d 663s # .e 663s # .f 663s # .c 663s # .b 663s # .d 663s # .b 663s # .c 663s # .e 663s # .f 663s # .e 663s # .f 663s # .d 663s # .c 663s # .b 663s # .d 663s # .c 663s # .f 663s # .e 663s # .b 663s # .d 663s # .f 663s # .c 663s # .b 663s # .e 663s # .d 663s # .e 663s # .f 663s # .b 663s # .c 663s # .d 663s # .e 663s # .f 663s # .b 663s # .c 663s # .d 663s # .e 663s # .f 663s # .c 663s # .b 663s # .d 663s # .e 663s # .c 663s # .f 663s # .b 663s # .e 663s # .d 664s # .c 664s # .f 664s # .e 664s # .d 664s # .b 664s # .c 664s # .f 664s # .d 664s # .e 664s # .b 664s # .c 664s # .f 664s # .b 664s # .e 664s # .d 664s # .e 664s # .b 664s # .f 664s # .c 664s # .d 664s # .e 664s # .b 664s # .f 664s # .c 664s # .d 664s # .e 664s # .d 664s ok 1 /gobject/refcount/properties-1 664s # slow test /gobject/refcount/properties-1 executed in 3.00 secs 664s # End of refcount tests 664s # End of gobject tests 664s ok - glib/properties-refcount1.test 664s # Running test: glib/enums.test 664s TAP version 14 664s # random seed: R02Sa2f7f3586ee496b1306568decbdca40a 664s ok - glib/enums.test 664s 1..4 664s # Start of enum tests 664s ok 1 /enum/basic 664s ok 2 /enum/define-type 664s # End of enum tests 664s # Start of flags tests 664s ok 3 /flags/basic 664s ok 4 /flags/define-type 664s # End of flags tests 664s # Running test: glib/thumbnail-verification.test 664s TAP version 14 664s # random seed: R02S5badd21f988e73e423c2fbe51f2faac2 664s 1..1 664s # Start of png-thumbs tests 664s ok 1 /png-thumbs/validity 664s # End of png-thumbs tests 664s ok - glib/thumbnail-verification.test 664s # Running test: glib/bookmarkfile.test 664s TAP version 14 664s # random seed: R02S67eee57e63561d9a1fe56bbcc87e762d 664s 1..96 664s # Start of bookmarks tests 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/load-from-data-dirs/.dirs/runtime 664s ok 1 /bookmarks/load-from-data-dirs 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/to-file/.dirs/runtime 664s # Roundtrip from newly created bookmark file /tmp/test_bookmarkfile_N83052/bookmarkfile-test-P54052.xbel 664s # Roundtrip from a valid bookmark file 664s ok 2 /bookmarks/to-file 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/move-item/.dirs/runtime 664s ok 3 /bookmarks/move-item 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/corner-cases/.dirs/runtime 664s ok 4 /bookmarks/corner-cases 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/misc/.dirs/runtime 664s ok 5 /bookmarks/misc 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/deprecated/.dirs/runtime 664s ok 6 /bookmarks/deprecated 664s # Start of parse tests 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-31.xbel/.dirs/runtime 664s ok 7 /bookmarks/parse/fail-31.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-23.xbel/.dirs/runtime 664s ok 8 /bookmarks/parse/fail-23.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-36.xbel/.dirs/runtime 664s ok 9 /bookmarks/parse/fail-36.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-22.xbel/.dirs/runtime 664s ok 10 /bookmarks/parse/fail-22.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-15.xbel/.dirs/runtime 664s ok 11 /bookmarks/parse/fail-15.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-30.xbel/.dirs/runtime 664s ok 12 /bookmarks/parse/fail-30.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-13.xbel/.dirs/runtime 664s ok 13 /bookmarks/parse/fail-13.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-09.xbel/.dirs/runtime 664s ok 14 /bookmarks/parse/fail-09.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-39.xbel/.dirs/runtime 664s ok 15 /bookmarks/parse/fail-39.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-05.xbel/.dirs/runtime 664s ok 16 /bookmarks/parse/fail-05.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-28.xbel/.dirs/runtime 664s ok 17 /bookmarks/parse/fail-28.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-03.xbel/.dirs/runtime 664s ok 18 /bookmarks/parse/fail-03.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-21.xbel/.dirs/runtime 664s ok 19 /bookmarks/parse/fail-21.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-24.xbel/.dirs/runtime 664s ok 20 /bookmarks/parse/fail-24.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-08.xbel/.dirs/runtime 664s ok 21 /bookmarks/parse/fail-08.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-01.xbel/.dirs/runtime 664s ok 22 /bookmarks/parse/valid-01.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-38.xbel/.dirs/runtime 664s ok 23 /bookmarks/parse/fail-38.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-07.xbel/.dirs/runtime 664s ok 24 /bookmarks/parse/fail-07.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-04.xbel/.dirs/runtime 664s ok 25 /bookmarks/parse/fail-04.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-32.xbel/.dirs/runtime 664s ok 26 /bookmarks/parse/fail-32.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-20.xbel/.dirs/runtime 664s ok 27 /bookmarks/parse/fail-20.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-03.xbel/.dirs/runtime 664s ok 28 /bookmarks/parse/valid-03.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-37.xbel/.dirs/runtime 664s ok 29 /bookmarks/parse/fail-37.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-41.xbel/.dirs/runtime 664s ok 30 /bookmarks/parse/fail-41.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/valid-02.xbel/.dirs/runtime 664s ok 31 /bookmarks/parse/valid-02.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-40.xbel/.dirs/runtime 664s ok 32 /bookmarks/parse/fail-40.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-27.xbel/.dirs/runtime 664s ok 33 /bookmarks/parse/fail-27.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-25.xbel/.dirs/runtime 664s ok 34 /bookmarks/parse/fail-25.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-19.xbel/.dirs/runtime 664s ok 35 /bookmarks/parse/fail-19.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-06.xbel/.dirs/runtime 664s ok 36 /bookmarks/parse/fail-06.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-42.xbel/.dirs/runtime 664s ok 37 /bookmarks/parse/fail-42.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-01.xbel/.dirs/runtime 664s ok 38 /bookmarks/parse/fail-01.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-11.xbel/.dirs/runtime 664s ok 39 /bookmarks/parse/fail-11.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-17.xbel/.dirs/runtime 664s ok 40 /bookmarks/parse/fail-17.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-35.xbel/.dirs/runtime 664s ok 41 /bookmarks/parse/fail-35.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-12.xbel/.dirs/runtime 664s ok 42 /bookmarks/parse/fail-12.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-33.xbel/.dirs/runtime 664s ok 43 /bookmarks/parse/fail-33.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-10.xbel/.dirs/runtime 664s ok 44 /bookmarks/parse/fail-10.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-29.xbel/.dirs/runtime 664s ok 45 /bookmarks/parse/fail-29.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-18.xbel/.dirs/runtime 664s ok 46 /bookmarks/parse/fail-18.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-02.xbel/.dirs/runtime 664s ok 47 /bookmarks/parse/fail-02.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-14.xbel/.dirs/runtime 664s ok 48 /bookmarks/parse/fail-14.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-26.xbel/.dirs/runtime 664s ok 49 /bookmarks/parse/fail-26.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-16.xbel/.dirs/runtime 664s ok 50 /bookmarks/parse/fail-16.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/parse/fail-34.xbel/.dirs/runtime 664s ok 51 /bookmarks/parse/fail-34.xbel 664s # End of parse tests 664s # Start of copy tests 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-31.xbel/.dirs/runtime 664s ok 52 /bookmarks/copy/fail-31.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-23.xbel/.dirs/runtime 664s ok 53 /bookmarks/copy/fail-23.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-36.xbel/.dirs/runtime 664s ok 54 /bookmarks/copy/fail-36.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-22.xbel/.dirs/runtime 664s ok 55 /bookmarks/copy/fail-22.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-15.xbel/.dirs/runtime 664s ok 56 /bookmarks/copy/fail-15.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-30.xbel/.dirs/runtime 664s ok 57 /bookmarks/copy/fail-30.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-13.xbel/.dirs/runtime 664s ok 58 /bookmarks/copy/fail-13.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-09.xbel/.dirs/runtime 664s ok 59 /bookmarks/copy/fail-09.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-39.xbel/.dirs/runtime 664s ok 60 /bookmarks/copy/fail-39.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-05.xbel/.dirs/runtime 664s ok 61 /bookmarks/copy/fail-05.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-28.xbel/.dirs/runtime 664s ok 62 /bookmarks/copy/fail-28.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-03.xbel/.dirs/runtime 664s ok 63 /bookmarks/copy/fail-03.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-21.xbel/.dirs/runtime 664s ok 64 /bookmarks/copy/fail-21.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-24.xbel/.dirs/runtime 664s ok 65 /bookmarks/copy/fail-24.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-08.xbel/.dirs/runtime 664s ok 66 /bookmarks/copy/fail-08.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-01.xbel/.dirs/runtime 664s ok 67 /bookmarks/copy/valid-01.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-38.xbel/.dirs/runtime 664s ok 68 /bookmarks/copy/fail-38.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-07.xbel/.dirs/runtime 664s ok 69 /bookmarks/copy/fail-07.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-04.xbel/.dirs/runtime 664s ok 70 /bookmarks/copy/fail-04.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-32.xbel/.dirs/runtime 664s ok 71 /bookmarks/copy/fail-32.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-20.xbel/.dirs/runtime 664s ok 72 /bookmarks/copy/fail-20.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-03.xbel/.dirs/runtime 664s ok 73 /bookmarks/copy/valid-03.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-37.xbel/.dirs/runtime 664s ok 74 /bookmarks/copy/fail-37.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-41.xbel/.dirs/runtime 664s ok 75 /bookmarks/copy/fail-41.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/valid-02.xbel/.dirs/runtime 664s ok 76 /bookmarks/copy/valid-02.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-40.xbel/.dirs/runtime 664s ok 77 /bookmarks/copy/fail-40.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-27.xbel/.dirs/runtime 664s ok 78 /bookmarks/copy/fail-27.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-25.xbel/.dirs/runtime 664s ok 79 /bookmarks/copy/fail-25.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-19.xbel/.dirs/runtime 664s ok 80 /bookmarks/copy/fail-19.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-06.xbel/.dirs/runtime 664s ok 81 /bookmarks/copy/fail-06.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-42.xbel/.dirs/runtime 664s ok 82 /bookmarks/copy/fail-42.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-01.xbel/.dirs/runtime 664s ok 83 /bookmarks/copy/fail-01.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-11.xbel/.dirs/runtime 664s ok 84 /bookmarks/copy/fail-11.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-17.xbel/.dirs/runtime 664s ok 85 /bookmarks/copy/fail-17.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-35.xbel/.dirs/runtime 664s ok 86 /bookmarks/copy/fail-35.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-12.xbel/.dirs/runtime 664s ok 87 /bookmarks/copy/fail-12.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-33.xbel/.dirs/runtime 664s ok 88 /bookmarks/copy/fail-33.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-10.xbel/.dirs/runtime 664s ok 89 /bookmarks/copy/fail-10.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-29.xbel/.dirs/runtime 664s ok 90 /bookmarks/copy/fail-29.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-18.xbel/.dirs/runtime 664s ok 91 /bookmarks/copy/fail-18.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-02.xbel/.dirs/runtime 664s ok 92 /bookmarks/copy/fail-02.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-14.xbel/.dirs/runtime 664s ok 93 /bookmarks/copy/fail-14.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-26.xbel/.dirs/runtime 664s ok 94 /bookmarks/copy/fail-26.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-16.xbel/.dirs/runtime 664s ok 95 /bookmarks/copy/fail-16.xbel 664s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/home 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/cache 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/system-config1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/system-config2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/config 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/system-data1:/tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/system-data2 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/data 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/state 664s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_bookmarkfile_N83052/bookmarks/copy/fail-34.xbel/.dirs/runtime 664s ok 96 /bookmarks/copy/fail-34.xbel 664s # End of copy tests 664s # End of bookmarks tests 664s ok - glib/bookmarkfile.test 664s # Running test: glib/signals-refcount1.test 664s TAP version 14 664s # random seed: R02S3dbb2d0c651553f8943944b09235f322 664s 1..1 664s # Start of gobject tests 664s # Start of refcount tests 664s # init 0xb0311c789dd0 664s # 664s # init 0xb0311c780610 664s # 665s # Executing: glib/signals-refcount1.test 669s ok - glib/signals-refcount1.test 669s # dispose 0xb0311c789dd0! 669s # 669s # dispose 0xb0311c780610! 669s # 669s ok 1 /gobject/refcount/signals 669s # slow test /gobject/refcount/signals executed in 5.00 secs 669s # End of refcount tests 669s # End of gobject tests 669s # Running test: glib/mappedfile.test 669s TAP version 14 669s # random seed: R02S46574252be75419a6851c90f307c7b94 669s 1..7 669s # Start of mappedfile tests 669s ok 1 /mappedfile/basic 669s ok 2 /mappedfile/empty 669s ok 3 /mappedfile/device 669s ok 4 /mappedfile/nonexisting 669s ok 5 /mappedfile/writable 669s ok 6 /mappedfile/writable_fd 669s ok 7 /mappedfile/gbytes 669s # End of mappedfile tests 669s ok - glib/mappedfile.test 669s # Running test: glib/gdbus-close-pending.test 669s TAP version 14 669s # random seed: R02S24739a66d0f645492f87d8c03809d9e7 669s 1..2 669s # Start of gdbus tests 669s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/home 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/cache 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/system-config1:/tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/system-config2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/config 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/system-data1:/tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/system-data2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/data 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/state 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-close-pending_E1DX52/gdbus/close-pending/.dirs/runtime 669s ok 1 /gdbus/close-pending 669s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/home 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/cache 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/system-config1:/tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/system-config2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/config 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/system-data1:/tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/system-data2 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/data 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/state 669s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-close-pending_E1DX52/gdbus/unref-pending/.dirs/runtime 669s ok 2 /gdbus/unref-pending 669s # End of gdbus tests 669s ok - glib/gdbus-close-pending.test 669s # Running test: glib/cache.test 669s TAP version 14 669s # random seed: R02S6a071fad188a570998a66d805503e56f 669s 1..1 669s # Start of cache tests 669s ok 1 /cache/basic 669s # End of cache tests 669s ok - glib/cache.test 669s # Running test: glib/utils-c-99.test 669s TAP version 14 669s # random seed: R02S9c9bfeaffee1b4cacacd57a1d4222aa5 669s 1..41 669s # Start of utils tests 669s ok 1 /utils/language-names 669s ok 2 /utils/locale-variants 669s ok 3 /utils/version 669s ok 4 /utils/appname 669s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847 669s # /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name. 669s ok 5 /utils/prgname-thread-safety 669s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969 669s # /utils/tmpdir summary: Test that g_get_tmp_dir() returns a correct default if TMPDIR is set to the empty string 669s ok 6 /utils/tmpdir 669s ok 7 /utils/basic_bits 669s ok 8 /utils/bits 669s ok 9 /utils/swap 669s ok 10 /utils/find-program 669s ok 11 /utils/find-program-for-path 669s ok 12 /utils/debug 669s ok 13 /utils/codeset 669s ok 14 /utils/codeset2 669s ok 15 /utils/console-charset 669s ok 16 /utils/gettext 669s ok 17 /utils/username 669s ok 18 /utils/realname 669s ok 19 /utils/hostname 669s ok 20 /utils/xdgdirs 669s ok 21 /utils/specialdir 669s # NAME: Ubuntu 669s ok 22 /utils/os-info 669s ok 23 /utils/clear-pointer 669s ok 24 /utils/clear-pointer-cast 669s ok 25 /utils/take-pointer 669s ok 26 /utils/clear-source 669s ok 27 /utils/misc-mem 669s # /utils/aligned-mem summary: Aligned memory allocator 669s # Alignment must not be zero 669s # Alignment must be a power of two 669s # Alignment must be a multiple of sizeof(void*) 669s ok 28 /utils/aligned-mem 669s # /utils/free-sized summary: Check that g_free_sized() works 669s ok 29 /utils/free-sized 669s ok 30 /utils/nullify 669s ok 31 /utils/atexit 669s ok 32 /utils/check-setuid 669s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663 669s ok 33 /utils/int-limits 669s ok 34 /utils/clear-list 669s ok 35 /utils/clear-slist 669s ok 36 /utils/steal-handle-id 669s # Start of specialdir tests 669s ok 37 /utils/specialdir/desktop 669s # End of specialdir tests 669s # Start of clear-pointer tests 669s ok 38 /utils/clear-pointer/side-effects 669s # End of clear-pointer tests 669s # Start of aligned-mem tests 669s # /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer 669s ok 39 /utils/aligned-mem/alignment 669s # /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation 669s ok 40 /utils/aligned-mem/zeroed 669s # /utils/aligned-mem/free-sized summary: Check that g_aligned_free_sized() works 669s ok 41 /utils/aligned-mem/free-sized 669s # Start of subprocess tests 669s # End of subprocess tests 669s # End of aligned-mem tests 669s # End of utils tests 669s ok - glib/utils-c-99.test 670s # Running test: glib/refcount.test 670s TAP version 14 670s # random seed: R02Sc8aee325fd790221080c3ce715061c2a 670s 1..4 670s # Start of refcount tests 670s ok 1 /refcount/grefcount 670s ok 2 /refcount/gatomicrefcount 670s # Start of grefcount tests 670s ok - glib/refcount.test 670s # Running test: glib/autoptr-gio.test 670s ok 3 /refcount/grefcount/saturation 670s # End of grefcount tests 670s # Start of gatomicrefcount tests 670s ok 4 /refcount/gatomicrefcount/saturation 670s # End of gatomicrefcount tests 670s # End of refcount tests 670s ok - glib/autoptr-gio.test 670s # Running test: glib/file-thumbnail.test 670s TAP version 14 670s # random seed: R02S92d27f32b2a51cc507336ef3d1ebeb7e 670s 1..1 670s # Start of autoptr tests 670s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 670s ok 1 /autoptr/autoptr 670s # End of autoptr tests 670s TAP version 14 670s # random seed: R02Sa7e06f9f0ebea3ae90573990ec840052 670s 1..7 670s # Start of file-thumbnail tests 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/system-config1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/config 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/system-data1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/runtime 670s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/fail/.dirs/cache/thumbnails/fail/gnome-thumbnail-factory/f098bcae74f8241ee3835bded7284cdd.png 670s ok 1 /file-thumbnail/fail 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/system-config1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/config 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/system-data1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/runtime 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/cache/thumbnails/fail/gnome-thumbnail-factory/f098bcae74f8241ee3835bded7284cdd.png 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/cache/thumbnails/normal/f098bcae74f8241ee3835bded7284cdd.png 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/cache/thumbnails/large/f098bcae74f8241ee3835bded7284cdd.png 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/cache/thumbnails/x-large/f098bcae74f8241ee3835bded7284cdd.png 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/size-priority/.dirs/cache/thumbnails/xx-large/f098bcae74f8241ee3835bded7284cdd.png 670s ok 2 /file-thumbnail/size-priority 670s # Start of valid tests 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/system-config1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/config 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/system-data1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/runtime 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/normal/.dirs/cache/thumbnails/normal/f098bcae74f8241ee3835bded7284cdd.png 670s ok 3 /file-thumbnail/valid/normal 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/system-config1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/config 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/system-data1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/runtime 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/large/.dirs/cache/thumbnails/large/f098bcae74f8241ee3835bded7284cdd.png 670s ok 4 /file-thumbnail/valid/large 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/system-config1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/config 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/system-data1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/runtime 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/x-large/.dirs/cache/thumbnails/x-large/f098bcae74f8241ee3835bded7284cdd.png 670s ok 5 /file-thumbnail/valid/x-large 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/system-config1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/config 670s ok - glib/file-thumbnail.test 670s # Running test: glib/signalgroup.test 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/system-data1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/runtime 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/valid/xx-large/.dirs/cache/thumbnails/xx-large/f098bcae74f8241ee3835bded7284cdd.png 670s ok 6 /file-thumbnail/valid/xx-large 670s # End of valid tests 670s # Start of unknown tests 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/system-config1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/config 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/system-data1:/tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/runtime 670s # Created test thumbnail at /tmp/test_file-thumbnail_IODU52/file-thumbnail/unknown/super-large/.dirs/cache/thumbnails/super-large/f098bcae74f8241ee3835bded7284cdd.png 670s ok 7 /file-thumbnail/unknown/super-large 670s # End of unknown tests 670s # End of file-thumbnail tests 670s TAP version 14 670s # random seed: R02S7cb7dfbca1dc04eaf3551c1bfc82e17e 670s 1..9 670s # Start of GObject tests 670s # Start of SignalGroup tests 670s ok 1 /GObject/SignalGroup/invalid 670s ok 2 /GObject/SignalGroup/simple 670s ok 3 /GObject/SignalGroup/changing-target 670s ok 4 /GObject/SignalGroup/blocking 670s ok 5 /GObject/SignalGroup/weak-ref-target 670s ok 6 /GObject/SignalGroup/connect-object 670s ok 7 /GObject/SignalGroup/signal-parsing 670s ok 8 /GObject/SignalGroup/properties 670s ok 9 /GObject/SignalGroup/interface 670s # Start of signal-parsing tests 670s # End of signal-parsing tests 670s # End of SignalGroup tests 670s # End of GObject tests 670s ok - glib/signalgroup.test 670s # Running test: glib/overflow-fallback.test 670s TAP version 14 670s # random seed: R02Sa20b17fc44391b67c0b3759d3c18c50e 670s 1..6 670s # Start of glib tests 670s # Start of checked-math tests 670s ok 1 /glib/checked-math/guint-add 670s ok 2 /glib/checked-math/guint-mul 670s ok 3 /glib/checked-math/guint64-add 670s ok 4 /glib/checked-math/guint64-mul 670s ok 5 /glib/checked-math/gsize-add 670s ok 6 /glib/checked-math/gsize-mul 670s # End of checked-math tests 670s # End of glib tests 670s ok - glib/overflow-fallback.test 670s # Running test: glib/mapping.test 670s TAP version 14 670s # random seed: R02Scc9db776b1518c97e3517805f352503f 670s 1..3 670s # Start of mapping tests 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mapping_8IAV52/mapping/flags/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mapping_8IAV52/mapping/flags/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mapping_8IAV52/mapping/flags/.dirs/system-config1:/tmp/test_mapping_8IAV52/mapping/flags/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mapping_8IAV52/mapping/flags/.dirs/config 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mapping_8IAV52/mapping/flags/.dirs/system-data1:/tmp/test_mapping_8IAV52/mapping/flags/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mapping_8IAV52/mapping/flags/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mapping_8IAV52/mapping/flags/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mapping_8IAV52/mapping/flags/.dirs/runtime 670s # test_mapping: ok 670s ok 1 /mapping/flags 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mapping_8IAV52/mapping/private/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mapping_8IAV52/mapping/private/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mapping_8IAV52/mapping/private/.dirs/system-config1:/tmp/test_mapping_8IAV52/mapping/private/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mapping_8IAV52/mapping/private/.dirs/config 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mapping_8IAV52/mapping/private/.dirs/system-data1:/tmp/test_mapping_8IAV52/mapping/private/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mapping_8IAV52/mapping/private/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mapping_8IAV52/mapping/private/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mapping_8IAV52/mapping/private/.dirs/runtime 670s ok 2 /mapping/private 670s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mapping_8IAV52/mapping/private-child/.dirs/home 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mapping_8IAV52/mapping/private-child/.dirs/cache 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mapping_8IAV52/mapping/private-child/.dirs/system-config1:/tmp/test_mapping_8IAV52/mapping/private-child/.dirs/system-config2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mapping_8IAV52/mapping/private-child/.dirs/config 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mapping_8IAV52/mapping/private-child/.dirs/system-data1:/tmp/test_mapping_8IAV52/mapping/private-child/.dirs/system-data2 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mapping_8IAV52/mapping/private-child/.dirs/data 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mapping_8IAV52/mapping/private-child/.dirs/state 670s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mapping_8IAV52/mapping/private-child/.dirs/runtime 670s # test_child_private: child spawned 670s # Subtest: /usr/libexec/installed-tests/glib/mapping 670s # random seed: R02S0d416461fd2e9a9c92bbdcae9013bd18 670s # test_child_private: received first child signal 670s # test_child_private: received parent signal 670s # Child exited with status 0 670s # test_child_private: received second child signal 670s ok 3 /mapping/private-child 670s # End of mapping tests 670s ok - glib/mapping.test 670s # Running test: glib/unix-streams.test 670s TAP version 14 670s # random seed: R02S7b4ff8fbbdc6bdf00a15abbd9530609e 670s 1..9 670s # Start of unix-streams tests 670s ok 1 /unix-streams/basic 670s # Executing: glib/unix-streams.test 670s ok 2 /unix-streams/pipe-io-test 670s # slow test /unix-streams/pipe-io-test executed in 0.50 secs 671s ok 3 /unix-streams/nonblocking-io-test 671s # slow test /unix-streams/nonblocking-io-test executed in 0.50 secs 671s ok 4 /unix-streams/read_write 671s ok 5 /unix-streams/read_writev 671s ok 6 /unix-streams/write-wouldblock 671s ok 7 /unix-streams/writev-wouldblock 671s ok 8 /unix-streams/write-async-wouldblock 671s ok 9 /unix-streams/writev-async-wouldblock 671s # End of unix-streams tests 671s ok - glib/unix-streams.test 671s # Running test: glib/io-channel.test 671s TAP version 14 671s # random seed: R02Se59aeae93c8674b8edfca63235b60a72 671s 1..2 671s # Start of io-channel tests 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/system-config1:/tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/system-data1:/tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_io-channel_GTZU52/io-channel/read-write/.dirs/runtime 671s # Line one 671s # 671s # Line two 671s # 671s # Line three 671s # 671s # /* Hello */ 671s # 671s # \x1234\x567890\x6666 671s # 671s # read 62 bytes, wrote 62 bytes 671s ok 1 /io-channel/read-write 671s # Start of read-line tests 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/system-config1:/tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/system-data1:/tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_io-channel_GTZU52/io-channel/read-line/embedded-nuls/.dirs/runtime 671s # /io-channel/read-line/embedded-nuls summary: Test that reading a line containing embedded nuls works when using non-standard line terminators. 671s ok 2 /io-channel/read-line/embedded-nuls 671s # End of read-line tests 671s # End of io-channel tests 671s TAP version 14 671s # random seed: R02S260ab4550a99155c431354041cf31fe9 671s 1..1 671s # Start of markup tests 671s ok 1 /markup/stack 671s # End of markup tests 671s TAP version 14 671s # random seed: R02S044f84ef9e43e23baf89b9ac61b5e95d 671s 1..3 671s # Start of private tests 671s ok 1 /private/instance 671s ok 2 /private/derived-instance 671s ok 3 /private/mixed-derived-instance 671s # End of private tests 671s TAP version 14 671s # random seed: R02Seeaf15c3f5438a349e550162c687f57b 671s 1..2 671s # Start of tls-connection tests 671s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestTlsBackend) for ?gio-tls-backend? 671s ok 1 /tls-connection/get-tls-channel-binding 671s ok 2 /tls-connection/get-dtls-channel-binding 671s # End of tls-connection tests 671s TAP version 14 671s # random seed: R02S6a4345a520a2d633b43c10f93453d177 671s 1..3 671s # Start of dir tests 671s ok 1 /dir/read 671s ok 2 /dir/nonexisting 671s # /dir/refcounting summary: Test refcounting interactions with g_dir_close() 671s ok 3 /dir/refcounting 671s # End of dir tests 671s ok - glib/io-channel.test 671s # Running test: glib/markup.test 671s ok - glib/markup.test 671s # Running test: glib/gobject-private.test 671s ok - glib/gobject-private.test 671s # Running test: glib/tls-bindings.test 671s ok - glib/tls-bindings.test 671s # Running test: glib/dir.test 671s ok - glib/dir.test 671s # Running test: glib/qdata.test 671s TAP version 14 671s # random seed: R02S5408e171b420089847dbc364a1d7970f 671s 1..2 671s # Start of qdata tests 671s ok 1 /qdata/threaded 671s ok 2 /qdata/dup 671s # End of qdata tests 671s ok - glib/qdata.test 671s # Running test: glib/memory-monitor.test 671s TAP version 14 671s # random seed: R02S09ee3f6cb2a426264d35f04bc2bac921 671s 1..1 671s # Start of memory-monitor tests 671s # GLib-GIO-DEBUG: Failed to initialize portal (GMemoryMonitorPortal) for gio-memory-monitor: Not using portals 671s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dbus (GMemoryMonitorDBus) for ?gio-memory-monitor? 671s ok 1 /memory-monitor/default 671s # End of memory-monitor tests 671s ok - glib/memory-monitor.test 671s # Running test: glib/object.test 671s TAP version 14 671s # random seed: R02Sc5c091f53846b652e51d9c2082ef870f 671s 1..2 671s # Start of object tests 671s # Start of constructor tests 671s ok 1 /object/constructor/singleton 671s ok 2 /object/constructor/infanticide # SKIP skip tests that rely on debug-only warnings 671s # End of constructor tests 671s # End of object tests 671s ok - glib/object.test 671s # Running test: glib/atomic-c-89.test 671s TAP version 14 671s # random seed: R02S2abcaadc3b400221ace7891f68b58e1b 671s 1..2 671s # Start of atomic tests 671s ok 1 /atomic/types 671s ok 2 /atomic/threaded 671s # End of atomic tests 671s ok - glib/atomic-c-89.test 671s # Running test: glib/repository-search-paths.test 671s TAP version 14 671s # random seed: R02Sa81de19073350f23a523e3d72ed36b97 671s 1..4 671s # Start of repository tests 671s # Start of search-paths tests 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/system-config1:/tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/system-data1:/tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/default/.dirs/runtime 671s ok 1 /repository/search-paths/default 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/system-config1:/tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/system-data1:/tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository-search-paths_GO4Z52/repository/search-paths/prepend/.dirs/runtime 671s ok 2 /repository/search-paths/prepend 671s # End of search-paths tests 671s # Start of library-paths tests 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/system-config1:/tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/system-data1:/tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/default/.dirs/runtime 671s ok 3 /repository/library-paths/default 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/system-config1:/tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/system-data1:/tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_repository-search-paths_GO4Z52/repository/library-paths/prepend/.dirs/runtime 671s ok 4 /repository/library-paths/prepend 671s # End of library-paths tests 671s # End of repository tests 671s ok - glib/repository-search-paths.test 671s # Running test: glib/vfs.test 671s TAP version 14 671s # random seed: R02S09a76d481950440ca68917a035bc5f17 671s 1..3 671s # Start of gvfs tests 671s ok 1 /gvfs/local 671s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 671s ok 2 /gvfs/register-scheme 671s # Start of resource tests 671s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3090 671s # /gvfs/resource/malformed-escaping summary: Test that g_vfs_get_file_for_uri() returns an invalid file for an invalid URI 671s ok 3 /gvfs/resource/malformed-escaping 671s # End of resource tests 671s # End of gvfs tests 671s ok - glib/vfs.test 671s # Running test: glib/unicode-normalize.test 671s TAP version 14 671s # random seed: R02Scbc7ed205d85359b5de71a617ae38a6c 671s 1..3 671s # Start of unicode tests 671s # Processing Part0 # Specific cases 671s # Processing Part1 # Character by character test 671s # Processing Part2 # Canonical Order Test 671s # Processing Part3 # PRI #29 Test 671s # Processing Part4 # Canonical closures (excluding Hangul) 671s # Processing Part5 # Chained primary composites 671s ok 1 /unicode/normalize 671s # Invalid UTF-8 vector 0 671s # Invalid UTF-8 vector 1 671s # Invalid UTF-8 vector 2 671s # Invalid UTF-8 vector 3 671s # Invalid UTF-8 vector 4 671s # Invalid UTF-8 vector 5 671s # Invalid UTF-8 vector 6 671s # Invalid UTF-8 vector 7 671s # Invalid UTF-8 vector 8 671s # Invalid UTF-8 vector 9 671s # Invalid UTF-8 vector 10 671s # Invalid UTF-8 vector 11 671s # Invalid UTF-8 vector 12 671s ok 2 /unicode/normalize-invalid 671s # Start of normalize tests 671s ok 3 /unicode/normalize/bad-length 671s # End of normalize tests 671s # End of unicode tests 671s ok - glib/unicode-normalize.test 671s # Running test: glib/thread.test 671s TAP version 14 671s # random seed: R02Sfea57e9371f263e31ceee8ba23c43def 671s 1..7 671s # Start of thread tests 671s ok 1 /thread/thread1 671s ok 2 /thread/thread2 671s ok 3 /thread/thread3 671s ok 4 /thread/thread4 671s ok 5 /thread/thread5 671s ok 6 /thread/thread6 671s ok 7 /thread/thread7 671s ok - glib/thread.test 671s # End of thread tests 671s # Running test: glib/pathbuf.test 671s TAP version 14 671s # random seed: R02S19781e03b7cb04edde25ecd9a8ad018f 671s 1..3 671s # Start of pathbuf tests 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/system-config1:/tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/system-data1:/tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_pathbuf_SW8452/pathbuf/init/.dirs/runtime 671s # Initializing empty path buf 671s # Initializing with empty path 671s # Initializing with full path 671s # Initializing with no path 671s # Allocating GPathBuf on the heap 671s ok 1 /pathbuf/init 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/system-config1:/tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/system-data1:/tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_pathbuf_SW8452/pathbuf/push-pop/.dirs/runtime 671s # Pushing relative path component 671s # Pushing absolute path component 671s # Popping a path component 671s # Can't pop the last element of a path buffer 671s ok 2 /pathbuf/push-pop 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/system-config1:/tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/system-data1:/tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/system-data2 671s ok - glib/pathbuf.test 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_pathbuf_SW8452/pathbuf/filename-extension/.dirs/runtime 671s ok 3 /pathbuf/filename-extension 671s # End of pathbuf tests 671s # Running test: glib/simple-proxy.test 671s TAP version 14 671s # random seed: R02S1f8a65ed911342e1886024f9b542ec99 671s 1..3 671s # Start of static-proxy tests 671s ok 1 /static-proxy/uri 671s ok 2 /static-proxy/socks 671s ok 3 /static-proxy/ignore 671s # End of static-proxy tests 671s ok - glib/simple-proxy.test 671s # Running test: glib/gdbus-message.test 671s ok - glib/gdbus-message.test 671s # Running test: glib/uri.test 671s TAP version 14 671s # random seed: R02S8ada741e1a527dad5a9af8375448ea56 671s 1..3 671s # Start of gdbus tests 671s # Start of message tests 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/system-config1:/tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/system-data1:/tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-message_64O452/gdbus/message/lock/.dirs/runtime 671s ok 1 /gdbus/message/lock 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/system-config1:/tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/system-data1:/tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-message_64O452/gdbus/message/copy/.dirs/runtime 671s ok 2 /gdbus/message/copy 671s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/home 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/cache 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/system-config1:/tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/system-config2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/config 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/system-data1:/tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/system-data2 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/data 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/state 671s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-message_64O452/gdbus/message/bytes-needed/.dirs/runtime 671s # Vector: 0 671s # Vector: 1 671s # Vector: 2 671s # Vector: 3 671s # Vector: 4 671s # Vector: 5 671s ok 3 /gdbus/message/bytes-needed 671s # End of message tests 671s # End of gdbus tests 671s TAP version 14 671s # random seed: R02S1181a6d6e8d94c94ab92b3244ae0323a 671s 1..24 671s # Start of uri tests 671s ok 1 /uri/file-to-uri 671s ok 2 /uri/file-from-uri 671s ok 3 /uri/file-roundtrip 671s ok 4 /uri/list 671s # Test 0: %2Babc %4F 671s # Test 1: %2Babc %4F 671s # Test 2: %00abc %4F 671s # Test 3: /cursors/none.png 671s # Test 4: /cursors%2fbad-subdir/none.png 671s # Test 5: %0 671s # Test 6: %ra 671s # Test 7: %2r 671s # Test 8: Timm B?der 671s # Test 9: (null) 671s ok 5 /uri/unescape-string 671s ok 6 /uri/unescape-segment 671s # Test 0: abcdefgABCDEFG._~ 671s # Test 1: :+ \\?# 671s # Test 2: a+b:c 671s # Test 3: a+b:c\303\234 671s # Test 4: \374;\322 671s # Test 5: \303\261\303( 671s ok 7 /uri/escape-string 671s ok 8 /uri/escape-bytes 671s ok 9 /uri/scheme 671s ok 10 /uri/build 671s ok 11 /uri/split 671s ok 12 /uri/is_valid 671s ok 13 /uri/to-string 671s ok 14 /uri/join 671s # /uri/join-split-round-trip summary: Test that joining different URI components survives a round trip 671s # Combination 0 671s # Combination 1 671s # Combination 2 671s # Combination 3 671s # Combination 4 671s # Combination 5 671s # Combination 6 671s # Combination 7 671s # Combination 8 671s # Combination 9 671s # Combination 10 671s # Combination 11 671s # Combination 12 671s # Combination 13 671s # Combination 14 671s # Combination 15 671s # Combination 16 671s # Combination 17 671s # Combination 18 671s # Combination 19 671s # Combination 20 671s # Combination 21 671s # Combination 22 671s # Combination 23 671s # Combination 24 671s # Combination 25 671s # Combination 26 671s # Combination 27 671s # Combination 28 671s # Combination 29 671s # Combination 30 671s # Combination 31 671s # Combination 32 671s # Combination 33 671s # Combination 34 671s # Combination 35 671s # Combination 36 671s # Combination 37 671s # Combination 38 671s # Combination 39 671s # Combination 40 671s # Combination 41 671s # Combination 42 671s # Combination 43 671s # Combination 44 671s # Combination 45 671s # Combination 46 671s # Combination 47 671s # Combination 48 671s # Combination 49 671s # Combination 50 671s # Combination 51 671s # Combination 52 671s # Combination 53 671s # Combination 54 671s # Combination 55 671s # Combination 56 671s # Combination 57 671s # Combination 58 671s # Combination 59 671s # Combination 60 671s # Combination 61 671s # Combination 62 671s # Combination 63 671s # Combination 64 671s # Combination 65 671s # Combination 66 671s # Combination 67 671s # Combination 68 671s # Combination 69 671s # Combination 70 671s # Combination 71 671s # Combination 72 671s # Combination 73 671s # Combination 74 671s # Combination 75 671s # Combination 76 671s # Combination 77 671s # Combination 78 671s # Combination 79 671s # Combination 80 671s # Combination 81 671s # Combination 82 671s # Combination 83 671s # Combination 84 671s # Combination 85 671s # Combination 86 671s # Combination 87 671s # Combination 88 671s # Combination 89 671s # Combination 90 671s # Combination 91 671s # Combination 92 671s # Combination 93 671s # Combination 94 671s # Combination 95 671s # Combination 96 671s # Combination 97 671s # Combination 98 671s # Combination 99 671s # Combination 100 671s # Combination 101 671s # Combination 102 671s # Combination 103 671s # Combination 104 671s # Combination 105 671s # Combination 106 671s # Combination 107 671s # Combination 108 671s # Combination 109 671s # Combination 110 671s # Combination 111 671s # Combination 112 671s # Combination 113 671s # Combination 114 671s # Combination 115 671s # Combination 116 671s # Combination 117 671s # Combination 118 671s # Combination 119 671s # Combination 120 671s # Combination 121 671s # Combination 122 671s # Combination 123 671s # Combination 124 671s # Combination 125 671s # Combination 126 671s # Combination 127 671s # Combination 128 671s # Combination 129 671s # Combination 130 671s # Combination 131 671s # Combination 132 671s # Combination 133 671s # Combination 134 671s # Combination 135 671s # Combination 136 671s # Combination 137 671s # Combination 138 671s # Combination 139 671s # Combination 140 671s # Combination 141 671s # Combination 142 671s # Combination 143 671s # Combination 144 671s # Combination 145 671s # Combination 146 671s # Combination 147 671s # Combination 148 671s # Combination 149 671s # Combination 150 671s # Combination 151 671s # Combination 152 671s # Combination 153 671s # Combination 154 671s # Combination 155 671s # Combination 156 671s # Combination 157 671s # Combination 158 671s # Combination 159 671s # Combination 160 671s # Combination 161 671s # Combination 162 671s # Combination 163 671s # Combination 164 671s # Combination 165 671s # Combination 166 671s # Combination 167 671s # Combination 168 671s # Combination 169 671s # Combination 170 671s # Combination 171 671s # Combination 172 671s # Combination 173 671s # Combination 174 671s # Combination 175 671s # Combination 176 671s # Combination 177 671s # Combination 178 671s # Combination 179 671s # Combination 180 671s # Combination 181 671s # Combination 182 671s # Combination 183 671s # Combination 184 671s # Combination 185 671s # Combination 186 671s # Combination 187 671s # Combination 188 671s # Combination 189 671s # Combination 190 671s # Combination 191 671s # Combination 192 671s # Combination 193 671s # Combination 194 671s # Combination 195 671s # Combination 196 671s # Combination 197 671s # Combination 198 671s # Combination 199 671s # Combination 200 671s # Combination 201 671s # Combination 202 671s # Combination 203 671s # Combination 204 671s # Combination 205 671s # Combination 206 671s # Combination 207 671s # Combination 208 671s # Combination 209 671s # Combination 210 671s # Combination 211 671s # Combination 212 671s # Combination 213 671s # Combination 214 671s # Combination 215 671s # Combination 216 671s # Combination 217 671s # Combination 218 671s # Combination 219 671s # Combination 220 671s # Combination 221 671s # Combination 222 671s # Combination 223 671s # Combination 224 671s # Combination 225 671s # Combination 226 671s # Combination 227 671s # Combination 228 671s # Combination 229 671s # Combination 230 671s # Combination 231 671s # Combination 232 671s # Combination 233 671s # Combination 234 671s # Combination 235 671s # Combination 236 671s # Combination 237 671s # Combination 238 671s # Combination 239 671s # Combination 240 671s # Combination 241 671s # Combination 242 671s # Combination 243 671s # Combination 244 671s # Combination 245 671s # Combination 246 671s # Combination 247 671s # Combination 248 671s # Combination 249 671s # Combination 250 671s # Combination 251 671s # Combination 252 671s # Combination 253 671s # Combination 254 671s # Combination 255 671s ok 15 /uri/join-split-round-trip 671s ok 16 /uri/normalize 671s # Start of unescape-bytes tests 671s # Test 0: %00%00 671s # Test 1: /cursors/none.png 671s # Test 2: /cursors%2fbad-subdir/none.png 671s # Test 3: %% 671s # Test 4: % 671s ok 17 /uri/unescape-bytes/nul-terminated 671s # Test 0: %00%00 671s # Test 1: /cursors/none.png 671s # Test 2: /cursors%2fbad-subdir/none.png 671s # Test 3: %% 671s # Test 4: % 671s ok 18 /uri/unescape-bytes/length 671s # End of unescape-bytes tests 671s # Start of parsing tests 671s # Test 0: foo: 671s # Test 1: file:/dev/null 671s # Test 2: file:///dev/null 671s # Test 3: ftp://user@host/path 671s # Test 4: ftp://user@host:9999/path 671s # Test 5: ftp://user:password@host/path 671s # Test 6: ftp://user:password@host:9999/path 671s # Test 7: ftp://user:password@host 671s # Test 8: http://us%65r@host 671s # Test 9: http://us%40r@host 671s ok - glib/uri.test 671s # Running test: glib/fdo-notification-backend.test 671s # Test 10: http://us%3ar@host 671s # Test 11: http://us%2fr@host 671s # Test 12: http://us%3fr@host 671s # Test 13: http://host?query 671s # Test 14: http://host/path?query=http%3A%2F%2Fhost%2Fpath%3Fchildparam%3Dchildvalue¶m=value 671s # 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 671s # Test 16: http://space/%20 671s # Test 17: http://delims/%3C%3E%23%25%22 671s # Test 18: http://unwise-chars/%7B%7D%7C%5C%5E%5B%5D%60 671s # Test 19: http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:80/index.html 671s # Test 20: http://[1080:0:0:0:8:800:200C:417A]/index.html 671s # Test 21: http://[3ffe:2a00:100:7031::1] 671s # Test 22: http://[1080::8:800:200C:417A]/foo 671s # Test 23: http://[::192.9.5.5]/ipng 671s # Test 24: http://[::FFFF:129.144.52.38]:80/index.html 671s # Test 25: http://[2010:836B:4179::836B:4179] 671s # Test 26: http://host/path with spaces 671s # Test 27: http://host/path 671s # Test 28: http://host/path 671s # Test 29: http://host 671s # Test 30: http://host:999 671s # Test 31: http://host/pa 671s # th 671s # Test 32: http: 671s # //host/path 671s # Test 33: http:// host/path 671s # Test 34: http://host/path? 671s # Test 35: http://host/path# 671s # Test 36: http://host/path% 671s # Test 37: http://h%ost/path 671s # Test 38: http://host/path%% 671s # Test 39: http://host/path%%% 671s # Test 40: http://host/path%/x/ 671s # Test 41: http://host/path%0x/ 671s # Test 42: http://host/path%ax 671s # Test 43: http://host/p?th/ 671s # Test 44: HTTP://////////////// 671s # Test 45: http://@host 671s # Test 46: http://:@host 671s # Test 47: scheme://foo%3Abar._webdav._tcp.local 671s # Test 48: http://example.com/.. 671s # Test 49: foo0://host/path 671s # Test 50: f0.o://host/path 671s # Test 51: http++://host/path 671s # Test 52: http-ish://host/path 671s # Test 53: http://[fe80::dead:beef%]/ 671s # Test 54: http://[fe80::dead:beef%em1]/ 671s # Test 55: http://[fe80::dead:beef%em1]/ 671s # Test 56: http://[fe80::dead:beef%25em1]/ 671s # Test 57: http://[fe80::dead:beef%25em1%20]/ 671s # Test 58: http://[fe80::dead:beef%25em%31]/ 671s # Test 59: http://[fe80::dead:beef%10]/ 671s # Test 60: http://[fe80::dead:beef%10]/ 671s # Test 61: http://[fe80::dead:beef%25]/ 671s # Test 62: http://[fe80::dead:beef%25]/ 671s # Test 63: http://[192.168.0.1%25em1]/ 671s # Test 64: http://[fe80::dead:beef%2em1]/ 671s # Test 65: http://[fe80::dead:beef%2em1]/ 671s # Test 66: http://[fe80::dead:beef%25em1%00]/ 671s # Test 67: http://[fe80::dead:beef%25em1%00]/ 671s # Test 68: http://xn--mixed-?p/ 671s # Test 69: data:./// 671s # Test 70: data:/.// 671s ok 19 /uri/parsing/absolute 671s ok 20 /uri/parsing/relative 671s # End of parsing tests 671s # Start of iter-params tests 671s # URI 0: p1=foo&p2=bar;p3=baz 671s # URI 1: p1=foo&p2=bar 671s # URI 2: p1=foo&&P1=bar 671s # URI 3: %00=foo 671s # URI 4: p1=%00 671s # URI 5: p1=foo&p1=bar 671s # URI 6: p1=foo&P1=bar 671s # URI 7: =% 671s # URI 8: = 671s # URI 9: foo 671s # URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 671s # URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 671s # URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb 671s ok 21 /uri/iter-params/nul-terminated 671s # URI 0: p1=foo&p2=bar;p3=baz 671s # URI 1: p1=foo&p2=bar 671s # URI 2: p1=foo&&P1=bar 671s # URI 3: %00=foo 671s # URI 4: p1=%00 671s # URI 5: p1=foo&p1=bar 671s # URI 6: p1=foo&P1=bar 671s # URI 7: =% 671s # URI 8: = 671s # URI 9: foo 671s # URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 671s # URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 671s # URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb 671s ok 22 /uri/iter-params/length 671s # End of iter-params tests 671s # Start of parse-params tests 671s # URI 0: p1=foo&p2=bar;p3=baz 671s # URI 1: p1=foo&p2=bar 671s # URI 2: p1=foo&&P1=bar 671s # URI 3: %00=foo 671s # URI 4: p1=%00 671s # URI 5: p1=foo&p1=bar 671s # URI 6: p1=foo&P1=bar 671s # URI 7: =% 671s # URI 8: = 671s # URI 9: foo 671s # URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 671s # URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 671s # URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb 671s ok 23 /uri/parse-params/nul-terminated 671s # URI 0: p1=foo&p2=bar;p3=baz 671s # URI 1: p1=foo&p2=bar 671s # URI 2: p1=foo&&P1=bar 671s # URI 3: %00=foo 671s # URI 4: p1=%00 671s # URI 5: p1=foo&p1=bar 671s # URI 6: p1=foo&P1=bar 671s # URI 7: =% 671s # URI 8: = 671s # URI 9: foo 671s # URI 10: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 671s # URI 11: foo=bar+%26+baz&saisons=%C3%89t%C3%A9%2Bhiver 671s # URI 12: token=exp=123~acl=/QualityLevels(*~hmac=0cb 671s ok 24 /uri/parse-params/length 671s # End of parse-params tests 671s # End of uri tests 671s TAP version 14 671s # random seed: R02S5e4dbe1301ebd4916e9612037bbd3282 671s 1..2 671s # Start of fdo-notification-backend tests 671s # Test constructing a GFdoNotificationBackend 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s ok 1 /fdo-notification-backend/construction 671s # Start of dbus tests 671s # /fdo-notification-backend/dbus/activate-action summary: Test how the backend handles valid and invalid ActionInvoked signals from the daemon 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 671s ok 2 /fdo-notification-backend/dbus/activate-action 671s # End of dbus tests 671s # End of fdo-notification-backend tests 671s ok - glib/fdo-notification-backend.test 671s # Running test: glib/scannerapi.test 671s ok - glib/scannerapi.test 671s # Running test: glib/power-profile-monitor.test 671s TAP version 14 671s # random seed: R02Seed454b95b8a737de08bfc39aa56cdb0 671s 1..4 671s # Start of scanner tests 671s ok 1 /scanner/warn 671s ok 2 /scanner/error 671s ok 3 /scanner/symbols 671s ok 4 /scanner/tokens 671s # End of scanner tests 671s TAP version 14 671s # random seed: R02S9b42e02895961aab986629274b9b66c1 671s 1..1 671s # Start of power-profile-monitor tests 671s # GLib-GIO-DEBUG: Failed to initialize portal (GPowerProfileMonitorPortal) for gio-power-profile-monitor: Not using portals 671s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dbus (GPowerProfileMonitorDBus) for ?gio-power-profile-monitor? 671s ok 1 /power-profile-monitor/default 671s # End of power-profile-monitor tests 671s ok - glib/power-profile-monitor.test 671s # Running test: glib/g-file.test 671s TAP version 14 671s # random seed: R02S82e69f722776322ca16ed325a1643a2c 671s 1..8 671s # Start of g-file tests 671s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 671s ok 1 /g-file/test_g_file_new_null 671s ok 2 /g-file/test_g_file_new_for_path 671s ok 3 /g-file/test_g_file_new_for_uri 671s ok 4 /g-file/test_g_file_dup 671s ok 5 /g-file/test_g_file_get_parse_name_utf8 671s file:///tmp/test-tmp-glib_g-file.test-5FK552 671s file:///tmp 671s file:///tmp 671s file:////UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88 671s file:///UTF-8%20p%C5%99%C3%ADli%C5%A1%20%C5%BElu%C5%A5ou%C4%8Dk%C3%BD%20k%C5%AF%C5%88 671s ok 6 /g-file/test_g_file_new_for_commandline_arg 671s /dir1 /dir1/dir2/dir3/ 671s /dir1/ /dir1/dir2/dir3/ 671s /dir1 /dir1/dir2/dir3 671s /dir1/ /dir1/dir2/dir3 671s /tmp/ /something/ 671s /dir1/dir2 /dir1/ 671s //dir1/new //dir1/new/dir2/dir3 671s /dir/UTF-8 p??li? ?lu?ou?k? k?? /dir/UTF-8 p??li? ?lu?ou?k? k??/dir2 671s file:///dir1 file:///dir1/dir2/dir3/ 671s file:///dir1/ file:///dir1/dir2/dir3/ 671s file:///dir1 file:///dir1/dir2/dir3 671s file:///dir1/ file:///dir1/dir2/dir3 671s file:///tmp/ file:///something/ 671s file:///dir1/dir2 file:///dir1/ 671s file:////dir1/new file:////dir1/new/dir2/dir3 671s 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 671s ok 7 /g-file/test_g_file_has_prefix 671s ok 8 /g-file/test_g_file_get_parent_child 671s # End of g-file tests 671s ok - glib/g-file.test 671s # Running test: glib/binding.test 671s TAP version 14 671s # random seed: R02S68566cc0a21b67073718de19d51b7945 671s 1..19 671s # Start of binding tests 671s ok 1 /binding/default 671s # /binding/canonicalisation summary: Test that bindings set up with non-canonical property names work 671s ok 2 /binding/canonicalisation 671s ok 3 /binding/bidirectional 671s ok 4 /binding/transform 671s ok 5 /binding/transform-default 671s ok 6 /binding/transform-closure 671s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=621782 671s ok 7 /binding/chain 671s ok 8 /binding/sync-create 671s ok 9 /binding/invert-boolean 671s ok 10 /binding/same-object 671s ok 11 /binding/unbind 671s ok 12 /binding/unbind-weak 671s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1373 671s ok 13 /binding/unbind-multiple 671s ok 14 /binding/fail 671s ok 15 /binding/interface 671s # /binding/concurrent-unbind summary: Test that unbinding from multiple threads concurrently works correctly 671s ok 16 /binding/concurrent-unbind 671s # /binding/concurrent-finalizing summary: Test that finalizing source/target from multiple threads concurrently works correctly 671s ok 17 /binding/concurrent-finalizing 671s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2676 671s ok 18 /binding/dispose-source 671s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2676 671s ok 19 /binding/dispose-target 671s # End of binding tests 671s ok - glib/binding.test 671s # Running test: glib/properties-refcount2.test 671s TAP version 14 671s # random seed: R02S3f946b8db10ab7476df0d835b8c23c2f 671s 1..1 671s # Start of gobject tests 671s # Start of refcount tests 671s # init 0xbe91b4d65e30 671s # 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 671s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s # . 672s ok - glib/properties-refcount2.test 672s # . 672s # dispose 0xbe91b4d65e30! 672s # 672s ok 1 /gobject/refcount/properties-2 672s # slow test /gobject/refcount/properties-2 executed in 0.93 secs 672s # End of refcount tests 672s # End of gobject tests 672s # Running test: glib/network-monitor-race.test 672s TAP version 14 672s # random seed: R02S9c7354b112f1031e402934c232cf4292 672s 1..1 672s # Start of network-monitor tests 672s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=793727 674s ok 1 /network-monitor/create-in-thread 674s # slow test /network-monitor/create-in-thread executed in 2.15 secs 674s # End of network-monitor tests 674s ok - glib/network-monitor-race.test 674s # Running test: glib/defaultvalue.test 674s TAP version 14 674s # random seed: R02Sf721ec12fac7c2ec94b22501ad800889 674s 1..84 674s # Start of Default Values tests 674s ok 1 /Default Values/GAppInfoMonitor # SKIP singleton 674s ok 2 /Default Values/GAppLaunchContext 674s ok 3 /Default Values/GApplicationCommandLine 674s # skipping GApplication:is-remote 674s ok 4 /Default Values/GApplication 674s ok 5 /Default Values/GBinding # SKIP mandatory construct params 674s ok 6 /Default Values/GBindingGroup 674s ok 7 /Default Values/GBufferedInputStream # SKIP mandatory construct params 674s ok 8 /Default Values/GBufferedOutputStream # SKIP mandatory construct params 674s ok 9 /Default Values/GBytesIcon 674s ok 10 /Default Values/GCancellable 674s ok 11 /Default Values/GCharsetConverter # SKIP mandatory construct params 674s ok 12 /Default Values/GConverterInputStream # SKIP mandatory construct params 674s ok 13 /Default Values/GConverterOutputStream # SKIP mandatory construct params 674s ok 14 /Default Values/GCredentials 674s ok 15 /Default Values/GDataInputStream # SKIP mandatory construct params 674s ok 16 /Default Values/GDataOutputStream # SKIP mandatory construct params 674s ok 17 /Default Values/GDBusActionGroup # SKIP mandatory construct params 674s ok 18 /Default Values/GDBusAuthObserver 674s ok 19 /Default Values/GDBusConnection # SKIP mandatory construct params 674s ok 20 /Default Values/GDBusMenuModel # SKIP crash in finalize 674s ok 21 /Default Values/GDBusMessage 674s ok 22 /Default Values/GDBusMethodInvocation # SKIP crash in finalize 674s ok 23 /Default Values/GDBusObjectManagerClient # SKIP mandatory construct params 674s ok 24 /Default Values/GDBusObjectManagerServer # SKIP mandatory construct params 674s ok 25 /Default Values/GDBusObjectProxy 674s ok 26 /Default Values/GDBusObjectSkeleton 674s ok 27 /Default Values/GDBusProxy # SKIP mandatory construct params 674s ok 28 /Default Values/GDBusServer # SKIP mandatory construct params 674s ok 29 /Default Values/GEmblem 674s ok 30 /Default Values/GEmblemedIcon 674s ok 31 /Default Values/GFileEnumerator # SKIP should be abstract 674s ok 32 /Default Values/GFileInfo 674s ok 33 /Default Values/GFileInputStream 674s ok 34 /Default Values/GFileIOStream # SKIP should be abstract 674s ok 35 /Default Values/GFileOutputStream 674s ok 36 /Default Values/GFilenameCompleter 674s ok 37 /Default Values/GInetAddress # SKIP mandatory construct params 674s ok 38 /Default Values/GInetAddressMask # SKIP initialization failed 674s ok 39 /Default Values/GInetSocketAddress # SKIP mandatory construct params 674s ok 40 /Default Values/GInitiallyUnowned 674s ok 41 /Default Values/GIOModule 674s ok 42 /Default Values/GListStore 674s ok 43 /Default Values/GMemoryInputStream 674s ok 44 /Default Values/GMemoryOutputStream 674s ok 45 /Default Values/GMenu 674s ok 46 /Default Values/GMenuItem 674s ok 47 /Default Values/GMountOperation 674s ok 48 /Default Values/GNativeSocketAddress 674s ok 49 /Default Values/GNetworkAddress 674s ok 50 /Default Values/GNetworkService 674s ok 51 /Default Values/GNotification 674s ok 52 /Default Values/GObject 674s ok 53 /Default Values/GPropertyAction # SKIP mandatory construct params 674s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver? 674s # skipping GProxyAddressEnumerator:proxy-resolver 674s ok 54 /Default Values/GProxyAddressEnumerator 674s ok 55 /Default Values/GProxyAddress # SKIP mandatory construct params 674s ok 56 /Default Values/GSettings # SKIP mandatory construct params 674s ok 57 /Default Values/GSignalGroup 674s ok 58 /Default Values/GSimpleAction 674s ok 59 /Default Values/GSimpleActionGroup 674s ok 60 /Default Values/GSimpleAsyncResult 674s ok 61 /Default Values/GSimpleIOStream # SKIP mandatory construct params 674s ok 62 /Default Values/GSimplePermission 674s ok 63 /Default Values/GSimpleProxyResolver 674s # skipping GSocketClient:proxy-resolver 674s ok 64 /Default Values/GSocketClient 674s ok 65 /Default Values/GSocketConnection # SKIP mandatory construct params 674s ok 66 /Default Values/GSocket # SKIP initialization failed 674s ok 67 /Default Values/GSocketListener 674s ok 68 /Default Values/GSocketService 674s ok 69 /Default Values/GSubprocess # SKIP initialization failed 674s ok - glib/defaultvalue.test 674s # Running test: glib/rcbox.test 674s ok - glib/rcbox.test 674s # Running test: glib/init.test 674s ok 70 /Default Values/GSubprocessLauncher 674s # GLib-GIO-DEBUG: GTask 0xc68e29157f30 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 674s ok 71 /Default Values/GTask 674s ok 72 /Default Values/GTcpConnection # SKIP mandatory construct params 674s ok 73 /Default Values/GTcpWrapperConnection # SKIP mandatory construct params 674s ok 74 /Default Values/GTestDBus 674s ok 75 /Default Values/GThemedIcon # SKIP mandatory construct params 674s ok 76 /Default Values/GThreadedSocketService 674s ok 77 /Default Values/GTlsInteraction 674s ok 78 /Default Values/GTlsPassword 674s ok 79 /Default Values/GUnixConnection # SKIP mandatory construct params 674s ok 80 /Default Values/GUnixFDList 674s ok 81 /Default Values/GVfs 674s ok 82 /Default Values/GVolumeMonitor 674s ok 83 /Default Values/GZlibCompressor 674s ok 84 /Default Values/GZlibDecompressor 674s # End of Default Values tests 674s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 674s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 674s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 674s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 674s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 674s TAP version 14 674s # random seed: R02S5e7dc9d50b0f5f7a81fa1c0c1c6baf3b 674s 1..8 674s # Start of rcbox tests 674s ok 1 /rcbox/new 674s # global_point = 0xb683861878a0 674s ok 2 /rcbox/release-full 674s # global_point_a = 0xb683861878a0 674s # global_point_b = 0xb68386187970 674s ok 3 /rcbox/dup 674s ok 4 /rcbox/alignment 674s # End of rcbox tests 674s # Start of atomic-rcbox tests 674s ok 5 /atomic-rcbox/new 674s # global_point = 0xb68386187970 674s ok 6 /atomic-rcbox/release-full 674s # global_point_a = 0xb68386187970 674s # global_point_b = 0xb683861878a0 674s ok 7 /atomic-rcbox/dup 674s ok 8 /atomic-rcbox/alignment 674s # End of atomic-rcbox tests 674s TAP version 14 674s # random seed: R02Sce0ef305e54285e7f49555af721089a8 674s 1..2 674s # Start of thread tests 674s # Start of deprecated tests 674s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_init_RTT352/thread/deprecated/init/.dirs/home 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_init_RTT352/thread/deprecated/init/.dirs/cache 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_init_RTT352/thread/deprecated/init/.dirs/system-config1:/tmp/test_init_RTT352/thread/deprecated/init/.dirs/system-config2 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_init_RTT352/thread/deprecated/init/.dirs/config 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_init_RTT352/thread/deprecated/init/.dirs/system-data1:/tmp/test_init_RTT352/thread/deprecated/init/.dirs/system-data2 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_init_RTT352/thread/deprecated/init/.dirs/data 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_init_RTT352/thread/deprecated/init/.dirs/state 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_init_RTT352/thread/deprecated/init/.dirs/runtime 674s ok 1 /thread/deprecated/init 674s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/home 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/cache 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/system-config1:/tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/system-config2 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/config 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/system-data1:/tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/system-data2 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/data 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/state 674s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_init_RTT352/thread/deprecated/init-with-errorcheck-mutexes/.dirs/runtime 674s ok 2 /thread/deprecated/init-with-errorcheck-mutexes 674s # End of deprecated tests 674s # End of thread tests 674s ok - glib/init.test 674s # Running test: glib/rand.test 674s TAP version 14 674s # random seed: R02S33ca9b14926c9f147257b4b4f10611a0 674s 1..2 674s # Start of rand tests 674s ok 1 /rand/test-rand 674s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=502560 674s ok 2 /rand/double-range 674s # End of rand tests 674s ok - glib/rand.test 674s # Running test: glib/utf8-validate.test 674s TAP version 14 674s # random seed: R02Sc52e5c66a713be35cf06dc68069f7d7b 674s 1..238 674s # Start of utf8 tests 674s # Vector 0 674s # Vector 1 674s # Vector 2 674s # Vector 3 674s # Vector 4 674s # Vector 5 674s # Vector 6 674s # Vector 7 674s # Vector 8 674s # Vector 9 674s # Vector 10 674s # Vector 11 674s # Vector 12 674s # Vector 13 674s # Vector 14 674s # Vector 15 674s # Vector 16 674s # Vector 17 674s # Vector 18 674s # Vector 19 674s # Vector 20 674s # Vector 21 674s # Vector 22 674s # Vector 23 674s # Vector 24 674s # Vector 25 674s # Vector 26 674s # Vector 27 674s ok 1 /utf8/get-char-validated 674s # Start of validate tests 674s ok 2 /utf8/validate/0 674s ok 3 /utf8/validate/1 674s ok 4 /utf8/validate/2 674s ok 5 /utf8/validate/3 674s ok 6 /utf8/validate/4 674s ok 7 /utf8/validate/5 674s ok 8 /utf8/validate/6 674s ok 9 /utf8/validate/7 674s ok 10 /utf8/validate/8 674s ok 11 /utf8/validate/9 674s ok 12 /utf8/validate/10 674s ok 13 /utf8/validate/11 674s ok 14 /utf8/validate/12 674s ok 15 /utf8/validate/13 674s ok 16 /utf8/validate/14 674s ok 17 /utf8/validate/15 674s ok 18 /utf8/validate/16 674s ok 19 /utf8/validate/17 674s ok 20 /utf8/validate/18 674s ok 21 /utf8/validate/19 674s ok 22 /utf8/validate/20 674s ok 23 /utf8/validate/21 674s ok 24 /utf8/validate/22 674s ok 25 /utf8/validate/23 674s ok 26 /utf8/validate/24 674s ok 27 /utf8/validate/25 674s ok 28 /utf8/validate/26 674s ok 29 /utf8/validate/27 674s ok 30 /utf8/validate/28 674s ok 31 /utf8/validate/29 674s ok 32 /utf8/validate/30 674s ok 33 /utf8/validate/31 674s ok 34 /utf8/validate/32 674s ok 35 /utf8/validate/33 674s ok 36 /utf8/validate/34 674s ok 37 /utf8/validate/35 674s ok 38 /utf8/validate/36 674s ok 39 /utf8/validate/37 674s ok 40 /utf8/validate/38 674s ok 41 /utf8/validate/39 674s ok 42 /utf8/validate/40 674s ok 43 /utf8/validate/41 674s ok 44 /utf8/validate/42 674s ok 45 /utf8/validate/43 674s ok 46 /utf8/validate/44 674s ok 47 /utf8/validate/45 674s ok 48 /utf8/validate/46 674s ok 49 /utf8/validate/47 674s ok 50 /utf8/validate/48 674s ok 51 /utf8/validate/49 674s ok 52 /utf8/validate/50 674s ok 53 /utf8/validate/51 674s ok 54 /utf8/validate/52 674s ok 55 /utf8/validate/53 674s ok 56 /utf8/validate/54 674s ok 57 /utf8/validate/55 674s ok 58 /utf8/validate/56 674s ok 59 /utf8/validate/57 674s ok 60 /utf8/validate/58 674s ok 61 /utf8/validate/59 674s ok 62 /utf8/validate/60 674s ok 63 /utf8/validate/61 674s ok 64 /utf8/validate/62 674s ok 65 /utf8/validate/63 674s ok 66 /utf8/validate/64 674s ok 67 /utf8/validate/65 674s ok 68 /utf8/validate/66 674s ok 69 /utf8/validate/67 674s ok 70 /utf8/validate/68 674s ok 71 /utf8/validate/69 674s ok 72 /utf8/validate/70 674s ok 73 /utf8/validate/71 674s ok 74 /utf8/validate/72 674s ok 75 /utf8/validate/73 674s ok 76 /utf8/validate/74 674s ok 77 /utf8/validate/75 674s ok 78 /utf8/validate/76 674s ok 79 /utf8/validate/77 674s ok 80 /utf8/validate/78 674s ok 81 /utf8/validate/79 674s ok 82 /utf8/validate/80 674s ok 83 /utf8/validate/81 674s ok 84 /utf8/validate/82 674s ok 85 /utf8/validate/83 674s ok 86 /utf8/validate/84 674s ok 87 /utf8/validate/85 674s ok 88 /utf8/validate/86 674s ok 89 /utf8/validate/87 674s ok 90 /utf8/validate/88 674s ok 91 /utf8/validate/89 674s ok 92 /utf8/validate/90 674s ok 93 /utf8/validate/91 674s ok 94 /utf8/validate/92 674s ok 95 /utf8/validate/93 674s ok 96 /utf8/validate/94 674s ok 97 /utf8/validate/95 674s ok 98 /utf8/validate/96 674s ok 99 /utf8/validate/97 674s ok 100 /utf8/validate/98 674s ok 101 /utf8/validate/99 674s ok 102 /utf8/validate/100 674s ok 103 /utf8/validate/101 674s ok 104 /utf8/validate/102 674s ok 105 /utf8/validate/103 674s ok 106 /utf8/validate/104 674s ok 107 /utf8/validate/105 674s ok 108 /utf8/validate/106 674s ok 109 /utf8/validate/107 674s ok 110 /utf8/validate/108 674s ok 111 /utf8/validate/109 674s ok 112 /utf8/validate/110 674s ok 113 /utf8/validate/111 674s ok 114 /utf8/validate/112 674s ok 115 /utf8/validate/113 674s ok 116 /utf8/validate/114 674s ok 117 /utf8/validate/115 674s ok 118 /utf8/validate/116 674s ok 119 /utf8/validate/117 674s ok 120 /utf8/validate/118 674s ok 121 /utf8/validate/119 674s ok 122 /utf8/validate/120 674s ok 123 /utf8/validate/121 674s ok 124 /utf8/validate/122 674s ok 125 /utf8/validate/123 674s ok 126 /utf8/validate/124 674s ok 127 /utf8/validate/125 674s ok 128 /utf8/validate/126 674s ok 129 /utf8/validate/127 674s ok 130 /utf8/validate/128 674s ok 131 /utf8/validate/129 674s ok 132 /utf8/validate/130 674s ok 133 /utf8/validate/131 674s ok 134 /utf8/validate/132 674s ok 135 /utf8/validate/133 674s ok 136 /utf8/validate/134 674s ok 137 /utf8/validate/135 674s ok 138 /utf8/validate/136 674s ok 139 /utf8/validate/137 674s ok - glib/utf8-validate.test 674s # Running test: glib/closure.test 674s ok - glib/closure.test 674s # Running test: glib/buffered-input-stream.test 674s ok 140 /utf8/validate/138 674s ok 141 /utf8/validate/139 674s ok 142 /utf8/validate/140 674s ok 143 /utf8/validate/141 674s ok 144 /utf8/validate/142 674s ok 145 /utf8/validate/143 674s ok 146 /utf8/validate/144 674s ok 147 /utf8/validate/145 674s ok 148 /utf8/validate/146 674s ok 149 /utf8/validate/147 674s ok 150 /utf8/validate/148 674s ok 151 /utf8/validate/149 674s ok 152 /utf8/validate/150 674s ok 153 /utf8/validate/151 674s ok 154 /utf8/validate/152 674s ok 155 /utf8/validate/153 674s ok 156 /utf8/validate/154 674s ok 157 /utf8/validate/155 674s ok 158 /utf8/validate/156 674s ok 159 /utf8/validate/157 674s ok 160 /utf8/validate/158 674s ok 161 /utf8/validate/159 674s ok 162 /utf8/validate/160 674s ok 163 /utf8/validate/161 674s ok 164 /utf8/validate/162 674s ok 165 /utf8/validate/163 674s ok 166 /utf8/validate/164 674s ok 167 /utf8/validate/165 674s ok 168 /utf8/validate/166 674s ok 169 /utf8/validate/167 674s ok 170 /utf8/validate/168 674s ok 171 /utf8/validate/169 674s ok 172 /utf8/validate/170 674s ok 173 /utf8/validate/171 674s ok 174 /utf8/validate/172 674s ok 175 /utf8/validate/173 674s ok 176 /utf8/validate/174 674s ok 177 /utf8/validate/175 674s ok 178 /utf8/validate/176 674s ok 179 /utf8/validate/177 674s ok 180 /utf8/validate/178 674s ok 181 /utf8/validate/179 674s ok 182 /utf8/validate/180 674s ok 183 /utf8/validate/181 674s ok 184 /utf8/validate/182 674s ok 185 /utf8/validate/183 674s ok 186 /utf8/validate/184 674s ok 187 /utf8/validate/185 674s ok 188 /utf8/validate/186 674s ok 189 /utf8/validate/187 674s ok 190 /utf8/validate/188 674s ok 191 /utf8/validate/189 674s ok 192 /utf8/validate/190 674s ok 193 /utf8/validate/191 674s ok 194 /utf8/validate/192 674s ok 195 /utf8/validate/193 674s ok 196 /utf8/validate/194 674s ok 197 /utf8/validate/195 674s ok 198 /utf8/validate/196 674s ok 199 /utf8/validate/197 674s ok 200 /utf8/validate/198 674s ok 201 /utf8/validate/199 674s ok 202 /utf8/validate/200 674s ok 203 /utf8/validate/201 674s ok 204 /utf8/validate/202 674s ok 205 /utf8/validate/203 674s ok 206 /utf8/validate/204 674s ok 207 /utf8/validate/205 674s ok 208 /utf8/validate/206 674s ok 209 /utf8/validate/207 674s ok 210 /utf8/validate/208 674s ok 211 /utf8/validate/209 674s ok 212 /utf8/validate/210 674s ok 213 /utf8/validate/211 674s ok 214 /utf8/validate/212 674s ok 215 /utf8/validate/213 674s ok 216 /utf8/validate/214 674s ok 217 /utf8/validate/215 674s ok 218 /utf8/validate/216 674s ok 219 /utf8/validate/217 674s ok 220 /utf8/validate/218 674s ok 221 /utf8/validate/219 674s ok 222 /utf8/validate/220 674s ok 223 /utf8/validate/221 674s ok 224 /utf8/validate/222 674s ok 225 /utf8/validate/223 674s ok 226 /utf8/validate/224 674s ok 227 /utf8/validate/225 674s ok 228 /utf8/validate/226 674s ok 229 /utf8/validate/227 674s ok 230 /utf8/validate/228 674s ok 231 /utf8/validate/229 674s ok 232 /utf8/validate/230 674s ok 233 /utf8/validate/231 674s ok 234 /utf8/validate/232 674s ok 235 /utf8/validate/233 674s ok 236 /utf8/validate/234 674s ok 237 /utf8/validate/235 674s ok 238 /utf8/validate/236 674s # End of validate tests 674s # End of utf8 tests 674s TAP version 14 674s # random seed: R02S01dcf2e6c4e0943ffea9d737191bde0e 674s 1..6 674s # Start of closure tests 674s ok 1 /closure/idle 674s ok 2 /closure/timeout 674s ok 3 /closure/iochannel 674s ok 4 /closure/child 674s ok 5 /closure/fd 674s ok 6 /closure/signal 674s # End of closure tests 674s TAP version 14 674s # random seed: R02Sadac49822f32be216d60406af76b5a27 674s 1..10 674s # Start of buffered-input-stream tests 674s ok 1 /buffered-input-stream/peek 674s ok 2 /buffered-input-stream/peek-buffer 674s ok 3 /buffered-input-stream/set-buffer-size 674s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=562393 674s ok 4 /buffered-input-stream/read-byte 674s ok 5 /buffered-input-stream/read 674s ok 6 /buffered-input-stream/read-async 674s ok 7 /buffered-input-stream/skip 674s ok 8 /buffered-input-stream/skip-async 674s ok 9 /buffered-input-stream/seek 674s # End of buffered-input-stream tests 674s # Start of filter-input-stream tests 674s ok 10 /filter-input-stream/close 674s # End of filter-input-stream tests 674s ok - glib/buffered-input-stream.test 674s # Running test: glib/gdbus-threading.test 674s TAP version 14 674s # random seed: R02Sebcad635b884a5673de18bccc6df2762 674s # 1..0 # SKIP all gdbus-threading tests skipped because they are too unreliable (glib#1515) 674s ok - glib/gdbus-threading.test 674s # Running test: glib/unix-mounts.test 674s TAP version 14 674s # random seed: R02S2cd208f5fcd7340d09898a79b9b80a27 674s 1..4 674s # Start of unix-mounts tests 674s ok 1 /unix-mounts/is-system-fs-type 674s ok 2 /unix-mounts/is-system-device-path 674s # /unix-mounts/get-mount-points summary: Basic test of g_unix_mount_points_get_from_file() 674s # Icon: . GThemedIcon drive-removable-media drive-removable drive drive-removable-media-symbolic drive-removable-symbolic drive-symbolic 674s # Icon: . GThemedIcon drive-removable-media-symbolic drive-removable-symbolic drive-symbolic drive-removable-media drive-removable drive 674s # Icon: . GThemedIcon drive-removable-media drive-removable drive drive-removable-media-symbolic drive-removable-symbolic drive-symbolic 674s # Icon: . GThemedIcon drive-removable-media-symbolic drive-removable-symbolic drive-symbolic drive-removable-media drive-removable drive 674s # Icon: . GThemedIcon drive-removable-media drive-removable drive drive-removable-media-symbolic drive-removable-symbolic drive-symbolic 674s # Icon: . GThemedIcon drive-removable-media-symbolic drive-removable-symbolic drive-symbolic drive-removable-media drive-removable drive 674s # Icon: . GThemedIcon drive-removable-media drive-removable drive drive-removable-media-symbolic drive-removable-symbolic drive-symbolic 674s # Icon: . GThemedIcon drive-removable-media-symbolic drive-removable-symbolic drive-symbolic drive-removable-media drive-removable drive 674s ok 3 /unix-mounts/get-mount-points 674s # /unix-mounts/get-mount-entries summary: Basic test of g_unix_mounts_get_from_file() 674s ok 4 /unix-mounts/get-mount-entries 674s # End of unix-mounts tests 674s ok - glib/unix-mounts.test 674s # Running test: glib/performance-threaded.test 674s Running test "liststore-is-a" 675s # Executing: glib/performance-threaded.test 675s 16301 runs, min/avg/max = 0.059/0.061/0.227 ms 675s Running test "liststore-interface-peek" 676s 29561 runs, min/avg/max = 0.033/0.034/0.200 ms 676s Running test "liststore-interface-peek-same" 677s 29986 runs, min/avg/max = 0.032/0.033/0.210 ms 677s ok - glib/performance-threaded.test 677s # Running test: glib/hook.test 677s ok - glib/hook.test 677s TAP version 14 677s # random seed: R02Sb2bde207bdfbec4accd6933a5c7193e6 677s 1..2 677s # Start of hook tests 677s ok 1 /hook/basics 677s ok 2 /hook/corner-cases 677s # End of hook tests 677s # Running test: glib/hostutils.test 677s TAP version 14 677s # random seed: R02S1d289a85de07df06dbd6f8a62a52d5ca 677s 1..3 677s # Start of hostutils tests 677s ok 1 /hostutils/to_ascii 677s ok 2 /hostutils/to_unicode 677s ok - glib/hostutils.test 677s ok 3 /hostutils/is_ip_addr 677s # End of hostutils tests 677s # Running test: glib/converter-stream.test 677s TAP version 14 677s # random seed: R02Sc3783fcfbe22d914c8d003ece0f5b82e 677s 1..17 677s # Start of converter tests 677s ok 1 /converter/basics 677s # End of converter tests 677s # Start of converter-input-stream tests 677s ok 2 /converter-input-stream/expander 677s ok 3 /converter-input-stream/compressor 677s # Start of truncation tests 677s ok 4 /converter-input-stream/truncation/zlib 677s ok 5 /converter-input-stream/truncation/gzip 678s ok 6 /converter-input-stream/truncation/raw 678s # End of truncation tests 678s # Start of charset tests 678s ok 7 /converter-input-stream/charset/utf8->latin1 678s ok 8 /converter-input-stream/charset/latin1->utf8 678s ok 9 /converter-input-stream/charset/fallbacks 678s # End of charset tests 678s # End of converter-input-stream tests 678s # Start of converter-output-stream tests 678s # Start of roundtrip tests 678s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 678s ok 10 /converter-output-stream/roundtrip/zlib-0 678s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 678s ok 11 /converter-output-stream/roundtrip/zlib-9 678s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 678s ok 12 /converter-output-stream/roundtrip/gzip-0 678s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 678s ok 13 /converter-output-stream/roundtrip/gzip-9 678s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 678s ok 14 /converter-output-stream/roundtrip/raw-0 678s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=619945 678s ok 15 /converter-output-stream/roundtrip/raw-9 678s # End of roundtrip tests 678s # End of converter-output-stream tests 678s # Start of converter-stream tests 678s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver? 678s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xb7152b5d6780 and GSocketClientAsyncConnectData 0xb7152b5d35b0 678s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 678s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 678s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xb7152b1e7ba0 for GSocketClientAsyncConnectData 0xb7152b5d35b0 678s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 678s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 678s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 678s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 678s ok - glib/converter-stream.test 678s ok 16 /converter-stream/pollable 678s ok 17 /converter-stream/leftover 678s # End of converter-stream tests 678s # Running test: glib/dynamictests.test 678s TAP version 14 678s # random seed: R02Sb5c7f7837a73c46bcfa89588c1566928 678s 1..2 678s # Start of GObject tests 678s ok 1 /GObject/threaded-dynamic-ref-unref-init 678s ok 2 /GObject/dynamic-interface-properties 678s # End of GObject tests 678s ok - glib/dynamictests.test 678s # Running test: glib/error.test 678s TAP version 14 678s # random seed: R02S8ab13281b64737a3009561042bc1dc5c 678s 1..3 678s # Start of error tests 678s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_error_N8U252/error/from-errno/.dirs/home 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_error_N8U252/error/from-errno/.dirs/cache 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_error_N8U252/error/from-errno/.dirs/system-config1:/tmp/test_error_N8U252/error/from-errno/.dirs/system-config2 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_error_N8U252/error/from-errno/.dirs/config 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_error_N8U252/error/from-errno/.dirs/system-data1:/tmp/test_error_N8U252/error/from-errno/.dirs/system-data2 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_error_N8U252/error/from-errno/.dirs/data 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_error_N8U252/error/from-errno/.dirs/state 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_error_N8U252/error/from-errno/.dirs/runtime 678s ok 1 /error/from-errno 678s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_error_N8U252/error/from-file-error/.dirs/home 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_error_N8U252/error/from-file-error/.dirs/cache 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_error_N8U252/error/from-file-error/.dirs/system-config1:/tmp/test_error_N8U252/error/from-file-error/.dirs/system-config2 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_error_N8U252/error/from-file-error/.dirs/config 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_error_N8U252/error/from-file-error/.dirs/system-data1:/tmp/test_error_N8U252/error/from-file-error/.dirs/system-data2 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_error_N8U252/error/from-file-error/.dirs/data 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_error_N8U252/error/from-file-error/.dirs/state 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_error_N8U252/error/from-file-error/.dirs/runtime 678s ok 2 /error/from-file-error 678s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_error_N8U252/error/from-win32-error/.dirs/home 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_error_N8U252/error/from-win32-error/.dirs/cache 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_error_N8U252/error/from-win32-error/.dirs/system-config1:/tmp/test_error_N8U252/error/from-win32-error/.dirs/system-config2 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_error_N8U252/error/from-win32-error/.dirs/config 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_error_N8U252/error/from-win32-error/.dirs/system-data1:/tmp/test_error_N8U252/error/from-win32-error/.dirs/system-data2 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_error_N8U252/error/from-win32-error/.dirs/data 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_error_N8U252/error/from-win32-error/.dirs/state 678s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_error_N8U252/error/from-win32-error/.dirs/runtime 678s ok - glib/error.test 678s # Running test: glib/gi-compile-repository.py.test 678s ok 3 /error/from-win32-error # SKIP Windows error codes can only be checked on Windows 678s # End of error tests 678s TAP version 13 678s ok 1 __main__.TestGICompileRepository.test_open_failure 678s # gir path set to [PosixPath('/usr/lib/aarch64-linux-gnu/gir-1.0'), PosixPath('/usr/share/gir-1.0')] 678s # gi-compile-repository: /usr/bin/gi-compile-repository 678s # tmpdir: /tmp/tmpxh1uyqmc 678s # Running: ['/usr/bin/gi-compile-repository', 'this-is/not/a-file.gir', '--output', '/tmp/tmpxh1uyqmc/invalid.typelib'] 678s # Return code: 1 678s # Output: 678s # 678s # Error: 678s # Error parsing file ‘this-is/not/a-file.gir’: Failed to open file “this-is/not/a-file.girâ€: No such file or directory 678s ok 2 __main__.TestGICompileRepositoryForGLib.test_compile 678s # gir path set to [PosixPath('/usr/lib/aarch64-linux-gnu/gir-1.0'), PosixPath('/usr/share/gir-1.0')] 678s # gi-compile-repository: /usr/bin/gi-compile-repository 678s # tmpdir: /tmp/tmpyje8wrnq 678s # Running: ['/usr/bin/gi-compile-repository', '/usr/lib/aarch64-linux-gnu/gir-1.0/GLib-2.0.gir', '--output', '/tmp/tmpyje8wrnq/GLib-2.typelib'] 678s # Return code: 0 678s # Output: 678s # 678s # Error: 678s ok 3 __main__.TestGICompileRepositoryForGLib.test_write_failure 678s # gi-compile-repository: /usr/bin/gi-compile-repository 678s # tmpdir: /tmp/tmpy_u9olm7 678s # Running: ['/usr/bin/gi-compile-repository', '/usr/lib/aarch64-linux-gnu/gir-1.0/GLib-2.0.gir', '--output', 'this-is/not/a-good-output/invalid.typelib'] 678s # Return code: 1 678s # Output: 678s # 678s # Error: 678s # Failed to open ‘this-is/not/a-good-output/invalid.typelib.tmp’: No such file or directory 679s ok 4 __main__.TestGICompileRepositoryForGObject.test_compile 679s # gir path set to [PosixPath('/usr/lib/aarch64-linux-gnu/gir-1.0'), PosixPath('/usr/share/gir-1.0')] 679s # gi-compile-repository: /usr/bin/gi-compile-repository 679s # tmpdir: /tmp/tmpjryqvove 679s # Running: ['/usr/bin/gi-compile-repository', '/usr/share/gir-1.0/GObject-2.0.gir', '--output', '/tmp/tmpjryqvove/GObject-2.typelib', '--includedir', '/usr/lib/aarch64-linux-gnu/gir-1.0', '--includedir', '/usr/share/gir-1.0'] 679s # Return code: 0 679s # Output: 679s # 679s # Error: 679s ok 5 __main__.TestGICompileRepositoryForGObject.test_write_failure 679s # gi-compile-repository: /usr/bin/gi-compile-repository 679s # tmpdir: /tmp/tmpsf8zac7v 679s # Running: ['/usr/bin/gi-compile-repository', '/usr/share/gir-1.0/GObject-2.0.gir', '--output', 'this-is/not/a-good-output/invalid.typelib', '--includedir', '/usr/lib/aarch64-linux-gnu/gir-1.0', '--includedir', '/usr/share/gir-1.0'] 679s # Return code: 1 679s # Output: 679s # 679s # Error: 679s # Failed to open ‘this-is/not/a-good-output/invalid.typelib.tmp’: No such file or directory 679s ok 6 __main__.TestGICompileRepositoryForGio.test_compile 679s # gir path set to [PosixPath('/usr/lib/aarch64-linux-gnu/gir-1.0'), PosixPath('/usr/share/gir-1.0')] 679s # gi-compile-repository: /usr/bin/gi-compile-repository 679s # tmpdir: /tmp/tmpzvl24u9f 679s # Running: ['/usr/bin/gi-compile-repository', '/usr/share/gir-1.0/Gio-2.0.gir', '--output', '/tmp/tmpzvl24u9f/Gio-2.typelib', '--includedir', '/usr/lib/aarch64-linux-gnu/gir-1.0', '--includedir', '/usr/share/gir-1.0'] 679s # Return code: 0 679s # Output: 679s # 679s # Error: 680s ok 7 __main__.TestGICompileRepositoryForGio.test_write_failure 680s # gi-compile-repository: /usr/bin/gi-compile-repository 680s # tmpdir: /tmp/tmpidwj7on1 680s # Running: ['/usr/bin/gi-compile-repository', '/usr/share/gir-1.0/Gio-2.0.gir', '--output', 'this-is/not/a-good-output/invalid.typelib', '--includedir', '/usr/lib/aarch64-linux-gnu/gir-1.0', '--includedir', '/usr/share/gir-1.0'] 680s # Return code: 1 680s # Output: 680s # 680s # Error: 680s # Failed to open ‘this-is/not/a-good-output/invalid.typelib.tmp’: No such file or directory 680s 1..7 680s ok - glib/gi-compile-repository.py.test 680s # Running test: glib/cxx-14.test 680s TAP version 14 680s # random seed: R02S9eebde47130a024b701d447de5c3ecb3 680s 1..2 680s # Start of gtask tests 680s # 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. 680s ok 1 /gtask/name 680s # Start of name tests 680s # 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. 680s ok 2 /gtask/name/macro-wrapper 680s # End of name tests 680s # End of gtask tests 680s ok - glib/cxx-14.test 680s # Running test: glib/async-splice-output-stream.test 680s TAP version 14 680s # random seed: R02S1b084ab8802e394b5d316264a7a254db 680s 1..5 680s # Start of async-splice tests 680s ok 1 /async-splice/copy-chunks 680s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 680s ok 2 /async-splice/copy-chunks-threaded-input 680s ok 3 /async-splice/copy-chunks-threaded-output 680s ok - glib/async-splice-output-stream.test 680s ok 4 /async-splice/copy-chunks-threaded 680s ok 5 /async-splice/cancelled 680s # End of async-splice tests 680s # Running test: glib/cxx.test 680s ok - glib/cxx.test 680s # Running test: glib/gdbus-test-codegen-min-required-2-64.test 680s TAP version 14 680s # random seed: R02Sb8d9c221a3607d77231792c8ac9fcf4c 680s 1..2 680s # Start of gtask tests 680s # 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. 680s ok 1 /gtask/name 680s # Start of name tests 680s # 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. 680s ok 2 /gtask/name/macro-wrapper 680s # End of name tests 680s # End of gtask tests 680s TAP version 14 680s # random seed: R02S73cb2d256101d918165fa6d11443dbf1 680s 1..8 680s # Start of gdbus tests 680s # Start of codegen tests 680s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/home 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/cache 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/system-config2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/config 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/system-data2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/data 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/state 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/annotations/.dirs/runtime 680s ok 1 /gdbus/codegen/annotations 680s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/home 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/cache 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/system-config2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/config 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/system-data2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/data 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/state 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/interface_stability/.dirs/runtime 680s ok 2 /gdbus/codegen/interface_stability 680s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/home 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/cache 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/system-config2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/config 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/system-data2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/data 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/state 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/object-manager/.dirs/runtime 680s ok 3 /gdbus/codegen/object-manager 680s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/home 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/cache 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/system-config2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/config 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/system-data2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/data 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/state 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/property-naming/.dirs/runtime 680s ok 4 /gdbus/codegen/property-naming 680s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/home 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/cache 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/system-config2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/config 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/system-data2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/data 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/state 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/autocleanups/.dirs/runtime 680s ok 5 /gdbus/codegen/autocleanups 680s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/home 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/cache 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/system-config2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/config 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/system-data2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/data 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/state 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/deprecations/.dirs/runtime 680s ok 6 /gdbus/codegen/deprecations 680s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/home 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/cache 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/system-config2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/config 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/system-data2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/data 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/state 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/standalone-interface-info/.dirs/runtime 680s ok 7 /gdbus/codegen/standalone-interface-info 680s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/home 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/cache 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/system-config1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/system-config2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/config 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/system-data1:/tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/system-data2 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/data 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/state 680s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-min-required-2-64_JDYU52/gdbus/codegen/unix-fd-list/.dirs/runtime 680s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1726 680s ok 8 /gdbus/codegen/unix-fd-list 680s # End of codegen tests 680s # End of gdbus tests 680s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 680s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 680s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 680s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 680s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 680s ok - glib/gdbus-test-codegen-min-required-2-64.test 680s # Running test: glib/bitlock.test 680s TAP version 14 680s # random seed: R02S70022a6e3a5816cd1e5f5bbd87b699ec 680s 1..1 680s # Start of bitlock tests 680s # Start of performance tests 680s # max perf: iterations per second 680s ok 1 /bitlock/performance/uncontended 680s # End of performance tests 680s # End of bitlock tests 680s ok - glib/bitlock.test 680s # Running test: glib/io-channel-basic.test 680s TAP version 14 680s # random seed: R02S76cbef552695b2862325273db3dca675 680s 1..1 680s # Start of gio tests 680s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 680s # random seed: R02S62aa268e113d671560697ecec9c00e18 680s # GLib-DEBUG: io-channel-basic: child writing 8+4248 bytes to 6 680s # GLib-DEBUG: io-channel-basic: ...from 5: IN 680s # GLib-DEBUG: io-channel-basic: ...from 5: 4248 bytes 680s # GLib-DEBUG: io-channel-basic: ...from 5: OK 680s # Executing: glib/io-channel-basic.test 680s # GLib-DEBUG: io-channel-basic: child writing 8+379 bytes to 6 680s # GLib-DEBUG: io-channel-basic: ...from 5: IN 680s # GLib-DEBUG: io-channel-basic: ...from 5: 379 bytes 680s # GLib-DEBUG: io-channel-basic: ...from 5: OK 680s # GLib-DEBUG: io-channel-basic: child writing 8+4963 bytes to 6 680s # GLib-DEBUG: io-channel-basic: ...from 5: IN 680s # GLib-DEBUG: io-channel-basic: ...from 5: 4963 bytes 680s # GLib-DEBUG: io-channel-basic: ...from 5: OK 681s # GLib-DEBUG: io-channel-basic: child writing 8+159 bytes to 6 681s # GLib-DEBUG: io-channel-basic: ...from 5: IN 681s # GLib-DEBUG: io-channel-basic: ...from 5: 159 bytes 681s # GLib-DEBUG: io-channel-basic: ...from 5: OK 681s # GLib-DEBUG: io-channel-basic: child writing 8+702 bytes to 6 681s # GLib-DEBUG: io-channel-basic: ...from 5: IN 681s # GLib-DEBUG: io-channel-basic: ...from 5: 702 bytes 681s # GLib-DEBUG: io-channel-basic: ...from 5: OK 681s # GLib-DEBUG: io-channel-basic: child writing 8+3214 bytes to 6 681s # GLib-DEBUG: io-channel-basic: ...from 5: IN 681s # GLib-DEBUG: io-channel-basic: ...from 5: 3214 bytes 681s # GLib-DEBUG: io-channel-basic: ...from 5: OK 681s # GLib-DEBUG: io-channel-basic: child writing 8+4938 bytes to 6 681s # GLib-DEBUG: io-channel-basic: ...from 5: IN 681s # GLib-DEBUG: io-channel-basic: ...from 5: 4938 bytes 681s # GLib-DEBUG: io-channel-basic: ...from 5: OK 682s # GLib-DEBUG: io-channel-basic: child writing 8+3071 bytes to 6 682s # GLib-DEBUG: io-channel-basic: ...from 5: IN 682s # GLib-DEBUG: io-channel-basic: ...from 5: 3071 bytes 682s # GLib-DEBUG: io-channel-basic: ...from 5: OK 682s # GLib-DEBUG: io-channel-basic: child writing 8+3373 bytes to 6 682s # GLib-DEBUG: io-channel-basic: ...from 5: IN 682s # GLib-DEBUG: io-channel-basic: ...from 5: 3373 bytes 682s # GLib-DEBUG: io-channel-basic: ...from 5: OK 682s # GLib-DEBUG: io-channel-basic: child writing 8+3551 bytes to 6 682s # GLib-DEBUG: io-channel-basic: ...from 5: IN 682s # GLib-DEBUG: io-channel-basic: ...from 5: 3551 bytes 682s # GLib-DEBUG: io-channel-basic: ...from 5: OK 682s # GLib-DEBUG: io-channel-basic: child writing 8+1530 bytes to 6 682s # GLib-DEBUG: io-channel-basic: ...from 5: IN 682s # GLib-DEBUG: io-channel-basic: ...from 5: 1530 bytes 682s # GLib-DEBUG: io-channel-basic: ...from 5: OK 683s # GLib-DEBUG: io-channel-basic: child writing 8+3481 bytes to 6 683s # GLib-DEBUG: io-channel-basic: ...from 5: IN 683s # GLib-DEBUG: io-channel-basic: ...from 5: 3481 bytes 683s # GLib-DEBUG: io-channel-basic: ...from 5: OK 683s # GLib-DEBUG: io-channel-basic: child writing 8+2168 bytes to 6 683s # GLib-DEBUG: io-channel-basic: ...from 5: IN 683s # GLib-DEBUG: io-channel-basic: ...from 5: 2168 bytes 683s # GLib-DEBUG: io-channel-basic: ...from 5: OK 683s # GLib-DEBUG: io-channel-basic: child writing 8+1852 bytes to 6 683s # GLib-DEBUG: io-channel-basic: ...from 5: IN 683s # GLib-DEBUG: io-channel-basic: ...from 5: 1852 bytes 683s # GLib-DEBUG: io-channel-basic: ...from 5: OK 684s # GLib-DEBUG: io-channel-basic: child writing 8+4772 bytes to 6 684s # GLib-DEBUG: io-channel-basic: ...from 5: IN 684s # GLib-DEBUG: io-channel-basic: ...from 5: 4772 bytes 684s # GLib-DEBUG: io-channel-basic: ...from 5: OK 684s # GLib-DEBUG: io-channel-basic: child writing 8+390 bytes to 6 684s # GLib-DEBUG: io-channel-basic: ...from 5: IN 684s # GLib-DEBUG: io-channel-basic: ...from 5: 390 bytes 684s # GLib-DEBUG: io-channel-basic: ...from 5: OK 684s # GLib-DEBUG: io-channel-basic: child writing 8+1371 bytes to 6 684s # GLib-DEBUG: io-channel-basic: ...from 5: IN 684s # GLib-DEBUG: io-channel-basic: ...from 5: 1371 bytes 684s # GLib-DEBUG: io-channel-basic: ...from 5: OK 684s # GLib-DEBUG: io-channel-basic: child writing 8+2286 bytes to 6 684s # GLib-DEBUG: io-channel-basic: ...from 5: IN 684s # GLib-DEBUG: io-channel-basic: ...from 5: 2286 bytes 684s # GLib-DEBUG: io-channel-basic: ...from 5: OK 685s # GLib-DEBUG: io-channel-basic: child writing 8+761 bytes to 6 685s # GLib-DEBUG: io-channel-basic: ...from 5: IN 685s # GLib-DEBUG: io-channel-basic: ...from 5: 761 bytes 685s # GLib-DEBUG: io-channel-basic: ...from 5: OK 685s # GLib-DEBUG: io-channel-basic: child writing 8+1889 bytes to 6 685s # GLib-DEBUG: io-channel-basic: ...from 5: IN 685s # GLib-DEBUG: io-channel-basic: ...from 5: 1889 bytes 685s # GLib-DEBUG: io-channel-basic: ...from 5: OK 685s # Executing: glib/io-channel-basic.test 685s # GLib-DEBUG: io-channel-basic: child writing 8+4440 bytes to 6 685s # GLib-DEBUG: io-channel-basic: ...from 5: IN 685s # GLib-DEBUG: io-channel-basic: ...from 5: 4440 bytes 685s # GLib-DEBUG: io-channel-basic: ...from 5: OK 685s # GLib-DEBUG: io-channel-basic: child writing 8+1108 bytes to 6 685s # GLib-DEBUG: io-channel-basic: child exiting, closing 6 685s # GLib-DEBUG: io-channel-basic: ...from 5: HUP IN 685s # GLib-DEBUG: io-channel-basic: ...from 5: 1108 bytes 685s # GLib-DEBUG: io-channel-basic: ...from 5: OK 685s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 685s # random seed: R02S4afd7d4c6a445a4654ff74c08ddd709c 685s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 685s # random seed: R02Scda5ff7aed03818eae0ecd03a3ce1aff 685s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 685s # random seed: R02S6f9aa8553f2521b7604eeb0e0122689e 685s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 685s # random seed: R02S85782aed57004b7924aace04df7eca70 685s # Subtest: /usr/libexec/installed-tests/glib/io-channel-basic 685s # random seed: R02S5f053b43abd7c90b42cf96fb24871cbb 686s # GLib-DEBUG: io-channel-basic: child writing 8+1703 bytes to 9 686s # GLib-DEBUG: io-channel-basic: ...from 8: IN 686s # GLib-DEBUG: io-channel-basic: ...from 8: 1703 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 8: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+3260 bytes to 17 686s # GLib-DEBUG: io-channel-basic: ...from 16: IN 686s # GLib-DEBUG: io-channel-basic: ...from 16: 3260 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 16: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+3609 bytes to 15 686s # GLib-DEBUG: io-channel-basic: ...from 14: IN 686s # GLib-DEBUG: io-channel-basic: ...from 14: 3609 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 14: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+3899 bytes to 11 686s # GLib-DEBUG: io-channel-basic: ...from 10: IN 686s # GLib-DEBUG: io-channel-basic: ...from 10: 3899 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 10: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+959 bytes to 13 686s # GLib-DEBUG: io-channel-basic: ...from 12: IN 686s # GLib-DEBUG: io-channel-basic: ...from 12: 959 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 12: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+1300 bytes to 11 686s # GLib-DEBUG: io-channel-basic: ...from 10: IN 686s # GLib-DEBUG: io-channel-basic: ...from 10: 1300 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 10: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+161 bytes to 15 686s # GLib-DEBUG: io-channel-basic: ...from 14: IN 686s # GLib-DEBUG: io-channel-basic: ...from 14: 161 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 14: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+1870 bytes to 9 686s # GLib-DEBUG: io-channel-basic: ...from 8: IN 686s # GLib-DEBUG: io-channel-basic: ...from 8: 1870 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 8: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+277 bytes to 17 686s # GLib-DEBUG: io-channel-basic: ...from 16: IN 686s # GLib-DEBUG: io-channel-basic: ...from 16: 277 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 16: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+173 bytes to 13 686s # GLib-DEBUG: io-channel-basic: ...from 12: IN 686s # GLib-DEBUG: io-channel-basic: ...from 12: 173 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 12: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+977 bytes to 15 686s # GLib-DEBUG: io-channel-basic: ...from 14: IN 686s # GLib-DEBUG: io-channel-basic: ...from 14: 977 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 14: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+2646 bytes to 11 686s # GLib-DEBUG: io-channel-basic: ...from 10: IN 686s # GLib-DEBUG: io-channel-basic: ...from 10: 2646 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 10: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+3118 bytes to 17 686s # GLib-DEBUG: io-channel-basic: ...from 16: IN 686s # GLib-DEBUG: io-channel-basic: ...from 16: 3118 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 16: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+2524 bytes to 13 686s # GLib-DEBUG: io-channel-basic: ...from 12: IN 686s # GLib-DEBUG: io-channel-basic: ...from 12: 2524 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 12: OK 686s # GLib-DEBUG: io-channel-basic: child writing 8+1308 bytes to 9 686s # GLib-DEBUG: io-channel-basic: ...from 8: IN 686s # GLib-DEBUG: io-channel-basic: ...from 8: 1308 bytes 686s # GLib-DEBUG: io-channel-basic: ...from 8: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+1156 bytes to 15 687s # GLib-DEBUG: io-channel-basic: ...from 14: IN 687s # GLib-DEBUG: io-channel-basic: ...from 14: 1156 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 14: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+31 bytes to 17 687s # GLib-DEBUG: io-channel-basic: ...from 16: IN 687s # GLib-DEBUG: io-channel-basic: ...from 16: 31 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 16: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+4648 bytes to 11 687s # GLib-DEBUG: io-channel-basic: ...from 10: IN 687s # GLib-DEBUG: io-channel-basic: ...from 10: 4648 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 10: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+3384 bytes to 9 687s # GLib-DEBUG: io-channel-basic: ...from 8: IN 687s # GLib-DEBUG: io-channel-basic: ...from 8: 3384 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 8: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+3985 bytes to 13 687s # GLib-DEBUG: io-channel-basic: ...from 12: IN 687s # GLib-DEBUG: io-channel-basic: ...from 12: 3985 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 12: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+1760 bytes to 15 687s # GLib-DEBUG: io-channel-basic: ...from 14: IN 687s # GLib-DEBUG: io-channel-basic: ...from 14: 1760 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 14: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+3685 bytes to 17 687s # GLib-DEBUG: io-channel-basic: ...from 16: IN 687s # GLib-DEBUG: io-channel-basic: ...from 16: 3685 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 16: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+644 bytes to 11 687s # GLib-DEBUG: io-channel-basic: ...from 10: IN 687s # GLib-DEBUG: io-channel-basic: ...from 10: 644 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 10: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+419 bytes to 9 687s # GLib-DEBUG: io-channel-basic: ...from 8: IN 687s # GLib-DEBUG: io-channel-basic: ...from 8: 419 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 8: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+3009 bytes to 13 687s # GLib-DEBUG: io-channel-basic: ...from 12: IN 687s # GLib-DEBUG: io-channel-basic: ...from 12: 3009 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 12: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+3198 bytes to 15 687s # GLib-DEBUG: io-channel-basic: ...from 14: IN 687s # GLib-DEBUG: io-channel-basic: ...from 14: 3198 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 14: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+4904 bytes to 17 687s # GLib-DEBUG: io-channel-basic: ...from 16: IN 687s # GLib-DEBUG: io-channel-basic: ...from 16: 4904 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 16: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+4290 bytes to 11 687s # GLib-DEBUG: io-channel-basic: ...from 10: IN 687s # GLib-DEBUG: io-channel-basic: ...from 10: 4290 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 10: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+4166 bytes to 9 687s # GLib-DEBUG: io-channel-basic: ...from 8: IN 687s # GLib-DEBUG: io-channel-basic: ...from 8: 4166 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 8: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+4361 bytes to 13 687s # GLib-DEBUG: io-channel-basic: ...from 12: IN 687s # GLib-DEBUG: io-channel-basic: ...from 12: 4361 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 12: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+604 bytes to 17 687s # GLib-DEBUG: io-channel-basic: ...from 16: IN 687s # GLib-DEBUG: io-channel-basic: ...from 16: 604 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 16: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+1549 bytes to 15 687s # GLib-DEBUG: io-channel-basic: ...from 14: IN 687s # GLib-DEBUG: io-channel-basic: ...from 14: 1549 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 14: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+2779 bytes to 11 687s # GLib-DEBUG: io-channel-basic: ...from 10: IN 687s # GLib-DEBUG: io-channel-basic: ...from 10: 2779 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 10: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+2788 bytes to 9 687s # GLib-DEBUG: io-channel-basic: ...from 8: IN 687s # GLib-DEBUG: io-channel-basic: ...from 8: 2788 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 8: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+3657 bytes to 13 687s # GLib-DEBUG: io-channel-basic: ...from 12: IN 687s # GLib-DEBUG: io-channel-basic: ...from 12: 3657 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 12: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+1047 bytes to 17 687s # GLib-DEBUG: io-channel-basic: ...from 16: IN 687s # GLib-DEBUG: io-channel-basic: ...from 16: 1047 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 16: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+3057 bytes to 15 687s # GLib-DEBUG: io-channel-basic: ...from 14: IN 687s # GLib-DEBUG: io-channel-basic: ...from 14: 3057 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 14: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+555 bytes to 11 687s # GLib-DEBUG: io-channel-basic: ...from 10: IN 687s # GLib-DEBUG: io-channel-basic: ...from 10: 555 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 10: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+4062 bytes to 9 687s # GLib-DEBUG: io-channel-basic: ...from 8: IN 687s # GLib-DEBUG: io-channel-basic: ...from 8: 4062 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 8: OK 687s # GLib-DEBUG: io-channel-basic: child writing 8+2118 bytes to 13 687s # GLib-DEBUG: io-channel-basic: ...from 12: IN 687s # GLib-DEBUG: io-channel-basic: ...from 12: 2118 bytes 687s # GLib-DEBUG: io-channel-basic: ...from 12: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+2312 bytes to 17 688s # GLib-DEBUG: io-channel-basic: ...from 16: IN 688s # GLib-DEBUG: io-channel-basic: ...from 16: 2312 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 16: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+2604 bytes to 15 688s # GLib-DEBUG: io-channel-basic: ...from 14: IN 688s # GLib-DEBUG: io-channel-basic: ...from 14: 2604 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 14: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+3389 bytes to 11 688s # GLib-DEBUG: io-channel-basic: ...from 10: IN 688s # GLib-DEBUG: io-channel-basic: ...from 10: 3389 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 10: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+1056 bytes to 9 688s # GLib-DEBUG: io-channel-basic: ...from 8: IN 688s # GLib-DEBUG: io-channel-basic: ...from 8: 1056 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 8: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+3401 bytes to 13 688s # GLib-DEBUG: io-channel-basic: ...from 12: IN 688s # GLib-DEBUG: io-channel-basic: ...from 12: 3401 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 12: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+4785 bytes to 17 688s # GLib-DEBUG: io-channel-basic: ...from 16: IN 688s # GLib-DEBUG: io-channel-basic: ...from 16: 4785 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 16: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+4708 bytes to 15 688s # GLib-DEBUG: io-channel-basic: ...from 14: IN 688s # GLib-DEBUG: io-channel-basic: ...from 14: 4708 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 14: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+2448 bytes to 11 688s # GLib-DEBUG: io-channel-basic: ...from 10: IN 688s # GLib-DEBUG: io-channel-basic: ...from 10: 2448 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 10: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+1900 bytes to 9 688s # GLib-DEBUG: io-channel-basic: ...from 8: IN 688s # GLib-DEBUG: io-channel-basic: ...from 8: 1900 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 8: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+1361 bytes to 13 688s # GLib-DEBUG: io-channel-basic: ...from 12: IN 688s # GLib-DEBUG: io-channel-basic: ...from 12: 1361 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 12: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+412 bytes to 15 688s # GLib-DEBUG: io-channel-basic: ...from 14: IN 688s # GLib-DEBUG: io-channel-basic: ...from 14: 412 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 14: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+859 bytes to 17 688s # GLib-DEBUG: io-channel-basic: ...from 16: IN 688s # GLib-DEBUG: io-channel-basic: ...from 16: 859 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 16: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+844 bytes to 9 688s # GLib-DEBUG: io-channel-basic: ...from 8: IN 688s # GLib-DEBUG: io-channel-basic: ...from 8: 844 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 8: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+4124 bytes to 11 688s # GLib-DEBUG: io-channel-basic: ...from 10: IN 688s # GLib-DEBUG: io-channel-basic: ...from 10: 4124 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 10: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+2768 bytes to 13 688s # GLib-DEBUG: io-channel-basic: ...from 12: IN 688s # GLib-DEBUG: io-channel-basic: ...from 12: 2768 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 12: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+2655 bytes to 15 688s # GLib-DEBUG: io-channel-basic: ...from 14: IN 688s # GLib-DEBUG: io-channel-basic: ...from 14: 2655 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 14: OK 688s # GLib-DEBUG: io-channel-basic: child writing 8+4880 bytes to 17 688s # GLib-DEBUG: io-channel-basic: ...from 16: IN 688s # GLib-DEBUG: io-channel-basic: ...from 16: 4880 bytes 688s # GLib-DEBUG: io-channel-basic: ...from 16: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+4463 bytes to 9 689s # GLib-DEBUG: io-channel-basic: ...from 8: IN 689s # GLib-DEBUG: io-channel-basic: ...from 8: 4463 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 8: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+2944 bytes to 11 689s # GLib-DEBUG: io-channel-basic: ...from 10: IN 689s # GLib-DEBUG: io-channel-basic: ...from 10: 2944 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 10: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+4217 bytes to 13 689s # GLib-DEBUG: io-channel-basic: ...from 12: IN 689s # GLib-DEBUG: io-channel-basic: ...from 12: 4217 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 12: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+1197 bytes to 15 689s # GLib-DEBUG: io-channel-basic: ...from 14: IN 689s # GLib-DEBUG: io-channel-basic: ...from 14: 1197 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 14: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+3481 bytes to 17 689s # GLib-DEBUG: io-channel-basic: ...from 16: IN 689s # GLib-DEBUG: io-channel-basic: ...from 16: 3481 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 16: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+2275 bytes to 11 689s # GLib-DEBUG: io-channel-basic: ...from 10: IN 689s # GLib-DEBUG: io-channel-basic: ...from 10: 2275 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 10: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+2340 bytes to 13 689s # GLib-DEBUG: io-channel-basic: ...from 12: IN 689s # GLib-DEBUG: io-channel-basic: ...from 12: 2340 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 12: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+1069 bytes to 9 689s # GLib-DEBUG: io-channel-basic: ...from 8: IN 689s # GLib-DEBUG: io-channel-basic: ...from 8: 1069 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 8: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+982 bytes to 15 689s # GLib-DEBUG: io-channel-basic: ...from 14: IN 689s # GLib-DEBUG: io-channel-basic: ...from 14: 982 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 14: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+4634 bytes to 17 689s # GLib-DEBUG: io-channel-basic: ...from 16: IN 689s # GLib-DEBUG: io-channel-basic: ...from 16: 4634 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 16: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+2560 bytes to 11 689s # GLib-DEBUG: io-channel-basic: ...from 10: IN 689s # GLib-DEBUG: io-channel-basic: ...from 10: 2560 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 10: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+988 bytes to 13 689s # GLib-DEBUG: io-channel-basic: ...from 12: IN 689s # GLib-DEBUG: io-channel-basic: ...from 12: 988 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 12: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+2324 bytes to 9 689s # GLib-DEBUG: io-channel-basic: ...from 8: IN 689s # GLib-DEBUG: io-channel-basic: ...from 8: 2324 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 8: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+1269 bytes to 15 689s # GLib-DEBUG: io-channel-basic: ...from 14: IN 689s # GLib-DEBUG: io-channel-basic: ...from 14: 1269 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 14: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+4789 bytes to 11 689s # GLib-DEBUG: io-channel-basic: ...from 10: IN 689s # GLib-DEBUG: io-channel-basic: ...from 10: 4789 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 10: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+2009 bytes to 17 689s # GLib-DEBUG: io-channel-basic: ...from 16: IN 689s # GLib-DEBUG: io-channel-basic: ...from 16: 2009 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 16: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+951 bytes to 9 689s # GLib-DEBUG: io-channel-basic: ...from 8: IN 689s # GLib-DEBUG: io-channel-basic: ...from 8: 951 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 8: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+3013 bytes to 13 689s # GLib-DEBUG: io-channel-basic: ...from 12: IN 689s # GLib-DEBUG: io-channel-basic: ...from 12: 3013 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 12: OK 689s # GLib-DEBUG: io-channel-basic: child writing 8+4242 bytes to 15 689s # GLib-DEBUG: io-channel-basic: ...from 14: IN 689s # GLib-DEBUG: io-channel-basic: ...from 14: 4242 bytes 689s # GLib-DEBUG: io-channel-basic: ...from 14: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+4012 bytes to 11 690s # GLib-DEBUG: io-channel-basic: ...from 10: IN 690s # GLib-DEBUG: io-channel-basic: ...from 10: 4012 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 10: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+693 bytes to 17 690s # GLib-DEBUG: io-channel-basic: ...from 16: IN 690s # GLib-DEBUG: io-channel-basic: ...from 16: 693 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 16: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+2524 bytes to 9 690s # GLib-DEBUG: io-channel-basic: ...from 8: IN 690s # GLib-DEBUG: io-channel-basic: ...from 8: 2524 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 8: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+2612 bytes to 13 690s # GLib-DEBUG: io-channel-basic: ...from 12: IN 690s # GLib-DEBUG: io-channel-basic: ...from 12: 2612 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 12: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+323 bytes to 15 690s # GLib-DEBUG: io-channel-basic: ...from 14: IN 690s # GLib-DEBUG: io-channel-basic: ...from 14: 323 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 14: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+4088 bytes to 17 690s # GLib-DEBUG: io-channel-basic: ...from 16: IN 690s # GLib-DEBUG: io-channel-basic: ...from 16: 4088 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 16: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+3180 bytes to 13 690s # GLib-DEBUG: io-channel-basic: ...from 12: IN 690s # GLib-DEBUG: io-channel-basic: ...from 12: 3180 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 12: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+2376 bytes to 11 690s # GLib-DEBUG: io-channel-basic: ...from 10: IN 690s # GLib-DEBUG: io-channel-basic: ...from 10: 2376 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 10: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+615 bytes to 9 690s # GLib-DEBUG: io-channel-basic: ...from 8: IN 690s # GLib-DEBUG: io-channel-basic: ...from 8: 615 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 8: OK 690s # Executing: glib/io-channel-basic.test 690s # GLib-DEBUG: io-channel-basic: child writing 8+4433 bytes to 15 690s # GLib-DEBUG: io-channel-basic: ...from 14: IN 690s # GLib-DEBUG: io-channel-basic: ...from 14: 4433 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 14: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+2613 bytes to 17 690s # GLib-DEBUG: io-channel-basic: ...from 16: IN 690s # GLib-DEBUG: io-channel-basic: ...from 16: 2613 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 16: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+3037 bytes to 13 690s # GLib-DEBUG: io-channel-basic: ...from 12: IN 690s # GLib-DEBUG: io-channel-basic: ...from 12: 3037 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 12: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+4772 bytes to 11 690s # GLib-DEBUG: io-channel-basic: ...from 10: IN 690s # GLib-DEBUG: io-channel-basic: ...from 10: 4772 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 10: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+2848 bytes to 9 690s # GLib-DEBUG: io-channel-basic: ...from 8: IN 690s # GLib-DEBUG: io-channel-basic: ...from 8: 2848 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 8: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+2511 bytes to 15 690s # GLib-DEBUG: io-channel-basic: ...from 14: IN 690s # GLib-DEBUG: io-channel-basic: ...from 14: 2511 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 14: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+2141 bytes to 17 690s # GLib-DEBUG: io-channel-basic: ...from 16: IN 690s # GLib-DEBUG: io-channel-basic: ...from 16: 2141 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 16: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+2542 bytes to 11 690s # GLib-DEBUG: io-channel-basic: ...from 10: IN 690s # GLib-DEBUG: io-channel-basic: ...from 10: 2542 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 10: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+26 bytes to 13 690s # GLib-DEBUG: io-channel-basic: ...from 12: IN 690s # GLib-DEBUG: io-channel-basic: ...from 12: 26 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 12: OK 690s # GLib-DEBUG: io-channel-basic: child writing 8+742 bytes to 9 690s # GLib-DEBUG: io-channel-basic: ...from 8: IN 690s # GLib-DEBUG: io-channel-basic: ...from 8: 742 bytes 690s # GLib-DEBUG: io-channel-basic: ...from 8: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+1802 bytes to 15 691s # GLib-DEBUG: io-channel-basic: ...from 14: IN 691s # GLib-DEBUG: io-channel-basic: ...from 14: 1802 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 14: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+1441 bytes to 11 691s # GLib-DEBUG: io-channel-basic: ...from 10: IN 691s # GLib-DEBUG: io-channel-basic: ...from 10: 1441 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 10: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+294 bytes to 17 691s # GLib-DEBUG: io-channel-basic: ...from 16: IN 691s # GLib-DEBUG: io-channel-basic: ...from 16: 294 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 16: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+1985 bytes to 13 691s # GLib-DEBUG: io-channel-basic: ...from 12: IN 691s # GLib-DEBUG: io-channel-basic: ...from 12: 1985 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 12: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+3020 bytes to 9 691s # GLib-DEBUG: io-channel-basic: ...from 8: IN 691s # GLib-DEBUG: io-channel-basic: ...from 8: 3020 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 8: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+185 bytes to 15 691s # GLib-DEBUG: io-channel-basic: child exiting, closing 15 691s # GLib-DEBUG: io-channel-basic: ...from 14: HUP IN 691s # GLib-DEBUG: io-channel-basic: ...from 14: 185 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 14: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+1480 bytes to 11 691s # GLib-DEBUG: io-channel-basic: ...from 10: IN 691s # GLib-DEBUG: io-channel-basic: ...from 10: 1480 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 10: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+318 bytes to 9 691s # GLib-DEBUG: io-channel-basic: child exiting, closing 9 691s # GLib-DEBUG: io-channel-basic: ...from 8: IN 691s # GLib-DEBUG: io-channel-basic: ...from 8: 318 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 8: OK 691s # GLib-DEBUG: io-channel-basic: ...from 8: HUP 691s # GLib-DEBUG: io-channel-basic: child writing 8+4930 bytes to 17 691s # GLib-DEBUG: io-channel-basic: ...from 16: IN 691s # GLib-DEBUG: io-channel-basic: ...from 16: 4930 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 16: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+299 bytes to 13 691s # GLib-DEBUG: io-channel-basic: ...from 12: IN 691s # GLib-DEBUG: io-channel-basic: ...from 12: 299 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 12: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+4453 bytes to 11 691s # GLib-DEBUG: io-channel-basic: child exiting, closing 11 691s # GLib-DEBUG: io-channel-basic: ...from 10: IN 691s # GLib-DEBUG: io-channel-basic: ...from 10: 4453 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 10: OK 691s # GLib-DEBUG: io-channel-basic: ...from 10: HUP 691s # GLib-DEBUG: io-channel-basic: child writing 8+349 bytes to 13 691s # GLib-DEBUG: io-channel-basic: child exiting, closing 13 691s # GLib-DEBUG: io-channel-basic: ...from 12: HUP IN 691s # GLib-DEBUG: io-channel-basic: ...from 12: 349 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 12: OK 691s # GLib-DEBUG: io-channel-basic: child writing 8+4978 bytes to 17 691s # GLib-DEBUG: io-channel-basic: child exiting, closing 17 691s # GLib-DEBUG: io-channel-basic: ...from 16: HUP IN 691s # GLib-DEBUG: io-channel-basic: ...from 16: 4978 bytes 691s # GLib-DEBUG: io-channel-basic: ...from 16: OK 691s ok 1 /gio/io-basics 691s # slow test /gio/io-basics executed in 11.53 secs 691s # End of gio tests 691s ok - glib/io-channel-basic.test 691s # Running test: glib/timeout.test 691s TAP version 14 691s # random seed: R02S8957dea32b1d2bcc338002e47734a13c 691s 1..5 691s # Start of timeout tests 691s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642052 693s ok 1 /timeout/seconds 693s # slow test /timeout/seconds executed in 2.10 secs 695s # Executing: glib/timeout.test 695s ok 2 /timeout/seconds-once 695s # slow test /timeout/seconds-once executed in 2.10 secs 695s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1600 697s ok 3 /timeout/weeks-overflow 697s # slow test /timeout/weeks-overflow executed in 2.10 secs 697s ok 4 /timeout/far-future-ready-time 700s # Executing: glib/timeout.test 705s # Executing: glib/timeout.test 708s ok 5 /timeout/rounding 708s ok - glib/timeout.test 708s # slow test /timeout/rounding executed in 10.58 secs 708s # End of timeout tests 708s # Running test: glib/fileutils.test 708s TAP version 14 708s # random seed: R02S58c74d8ae59ad261d55866972e8cd5da 708s 1..27 708s # Start of fileutils tests 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/paths/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/paths/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/paths/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/paths/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/paths/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/paths/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/paths/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/paths/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/paths/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/paths/.dirs/runtime 708s ok 1 /fileutils/paths 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/build-path/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/build-path/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/build-path/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/build-path/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/build-path/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/build-path/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/build-path/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/build-path/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/build-path/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/build-path/.dirs/runtime 708s ok 2 /fileutils/build-path 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/build-pathv/.dirs/runtime 708s ok 3 /fileutils/build-pathv 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/build-filename/.dirs/runtime 708s ok 4 /fileutils/build-filename 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/build-filenamev/.dirs/runtime 708s ok 5 /fileutils/build-filenamev 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents/.dirs/runtime 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s # Checking g_mkdir_with_parents() in subdir ./hum/ 708s # Checking g_mkdir_with_parents() in subdir ./hii///haa/hee/ 708s ok 6 /fileutils/mkdir-with-parents 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/mkdir-with-parents-permission/.dirs/runtime 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s ok 7 /fileutils/mkdir-with-parents-permission 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/format-size-for-display/.dirs/runtime 708s ok 8 /fileutils/format-size-for-display 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/errors/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/errors/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/errors/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/errors/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/errors/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/errors/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/errors/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/errors/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/errors/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/errors/.dirs/runtime 708s ok 9 /fileutils/errors 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/basename/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/basename/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/basename/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/basename/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/basename/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/basename/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/basename/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/basename/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/basename/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/basename/.dirs/runtime 708s ok 10 /fileutils/basename 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/get-basename/.dirs/runtime 708s ok 11 /fileutils/get-basename 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/dirname/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/dirname/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/dirname/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/dirname/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/dirname/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/dirname/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/dirname/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/dirname/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/dirname/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/dirname/.dirs/runtime 708s ok 12 /fileutils/dirname 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/dir-make-tmp/.dirs/runtime 708s ok 13 /fileutils/dir-make-tmp 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/file-open-tmp/.dirs/runtime 708s ok 14 /fileutils/file-open-tmp 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/file-test/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/file-test/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/file-test/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/file-test/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/file-test/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/file-test/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/file-test/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/file-test/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/file-test/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/file-test/.dirs/runtime 708s ok 15 /fileutils/file-test 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/mkstemp/.dirs/runtime 708s ok 16 /fileutils/mkstemp 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/mkdtemp/.dirs/runtime 708s ok 17 /fileutils/mkdtemp 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/get-contents/.dirs/runtime 708s ok 18 /fileutils/get-contents 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/get-contents-large-file/.dirs/runtime 708s ok 19 /fileutils/get-contents-large-file # SKIP Skipping slow largefile test 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/set-contents/.dirs/runtime 708s ok 20 /fileutils/set-contents 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/set-contents-full/.dirs/runtime 708s # /fileutils/set-contents-full summary: Test g_file_set_contents_full() with various flags 708s # Flags 0 and test 0 708s # Flags 0 and test 1 708s # Flags 0 and test 2 708s # Flags 0 and test 3 708s # Flags 0 and test 4 708s # Flags 0 and test 5 708s # Flags 1 and test 0 708s # Flags 1 and test 1 708s # Flags 1 and test 2 708s # Flags 1 and test 3 708s # Flags 1 and test 4 708s # Flags 1 and test 5 708s # Flags 2 and test 0 708s # Flags 2 and test 1 708s # Flags 2 and test 2 708s # Flags 2 and test 3 708s # Flags 2 and test 4 708s # Flags 2 and test 5 708s # Flags 3 and test 0 708s # Flags 3 and test 1 708s # Flags 3 and test 2 708s # Flags 3 and test 3 708s # Flags 3 and test 4 708s # Flags 3 and test 5 708s # Flags 4 and test 0 708s # Flags 4 and test 1 708s # Flags 4 and test 2 708s # Flags 4 and test 3 708s # Flags 4 and test 4 708s # Flags 4 and test 5 708s # Flags 5 and test 0 708s # Flags 5 and test 1 708s # Flags 5 and test 2 708s # Flags 5 and test 3 708s # Flags 5 and test 4 708s # Flags 5 and test 5 708s # Flags 6 and test 0 708s # Flags 6 and test 1 708s # Flags 6 and test 2 708s # Flags 6 and test 3 708s # Flags 6 and test 4 708s # Flags 6 and test 5 708s ok 21 /fileutils/set-contents-full 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/read-link/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/read-link/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/read-link/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/read-link/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/read-link/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/read-link/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/read-link/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/read-link/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/read-link/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/read-link/.dirs/runtime 708s ok 22 /fileutils/read-link 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/stdio-wrappers/.dirs/runtime 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s ok 23 /fileutils/stdio-wrappers 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/fopen-modes/.dirs/runtime 708s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/119 708s # Testing fopen() mode 'w' 708s # Testing fopen() mode 'r' 708s # Testing fopen() mode 'a' 708s # Testing fopen() mode 'w+' 708s # Testing fopen() mode 'r+' 708s # Testing fopen() mode 'a+' 708s # Testing fopen() mode 'wb' 708s # Testing fopen() mode 'rb' 708s # Testing fopen() mode 'ab' 708s # Testing fopen() mode 'w+b' 708s # Testing fopen() mode 'r+b' 708s # Testing fopen() mode 'a+b' 708s # Testing fopen() mode 'wb+' 708s # Testing fopen() mode 'rb+' 708s # Testing fopen() mode 'ab+' 708s ok 24 /fileutils/fopen-modes 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/clear-fd/.dirs/runtime 708s # /fileutils/clear-fd summary: Test g_clear_fd() and g_autofd 708s # Will be closed by autocleanup: 3, -42 708s # Testing error handling 708s ok 25 /fileutils/clear-fd 708s # Start of set-contents-full tests 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-file/.dirs/runtime 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s # /fileutils/set-contents-full/read-only-file summary: Test g_file_set_contents_full() on a read-only file 708s ok 26 /fileutils/set-contents-full/read-only-file 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/system-config1:/tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/system-data1:/tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_fileutils_B62552/fileutils/set-contents-full/read-only-directory/.dirs/runtime 708s # /fileutils/set-contents-full/read-only-directory summary: Test g_file_set_contents_full() on a file in a read-only directory 708s # Flags 0 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s # Flags 1 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s # Flags 2 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s # Flags 3 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s # Flags 4 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s # Flags 5 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s # Flags 6 708s # We do not have CAP_DAC_OVERRIDE or equivalent 708s ok 27 /fileutils/set-contents-full/read-only-directory 708s # End of set-contents-full tests 708s # Start of clear-fd tests 708s # Start of subprocess tests 708s # End of subprocess tests 708s # End of clear-fd tests 708s # End of fileutils tests 708s Unable to clean up temporary directory /tmp/test_fileutils_B62552/glib-file-set-contents-full-rodir-31D352: Directory not empty 708s Unable to clean up temporary directory /tmp/test_fileutils_B62552/glib-file-set-contents-full-rodir-EL8352: Directory not empty 708s Unable to clean up temporary directory /tmp/test_fileutils_B62552/glib-file-set-contents-full-rodir-IGI452: Directory not empty 708s Unable to clean up temporary directory /tmp/test_fileutils_B62552/glib-file-set-contents-full-rodir-V1B452: Directory not empty 708s Unable to clean up temporary directory /tmp/test_fileutils_B62552/glib-file-set-contents-full-rodir-MPH452: Directory not empty 708s Unable to clean up temporary directory /tmp/test_fileutils_B62552/glib-file-set-contents-full-rodir-M5J452: Directory not empty 708s Unable to clean up temporary directory /tmp/test_fileutils_B62552/glib-file-set-contents-full-rodir-ELE352: Directory not empty 708s ok - glib/fileutils.test 708s Unable to clean up temporary directory /tmp/test_fileutils_B62552: Directory not empty 708s # Running test: glib/utf8-misc.test 708s ok - glib/utf8-misc.test 708s TAP version 14 708s # random seed: R02S0bf372d1a5a35c62263b8d4232e9fc8f 708s 1..7 708s # Start of utf8 tests 708s ok 1 /utf8/strlen 708s ok 2 /utf8/strncpy 708s ok 3 /utf8/strrchr 708s ok 4 /utf8/reverse 708s ok 5 /utf8/substring 708s ok 6 /utf8/make-valid 708s ok 7 /utf8/truncate-middle 708s # End of utf8 tests 708s # Running test: glib/portal-support-snap.test 708s TAP version 14 708s # random seed: R02S864f5d01fb5f3cc31d8dcdead85db087 708s 1..7 708s # Start of portal-support tests 708s # Start of snap tests 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/system-config1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/system-data1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl/.dirs/runtime 708s # Created snap.yaml in /tmp/test_portal-support-snap_JL7352/meta/snap.yaml 708s Unable to clean up temporary directory /tmp/test_portal-support-snap_JL7352/portal-support/snap/no-snapctl: No such file or directory 708s ok 1 /portal-support/snap/no-snapctl 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/system-config1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/system-data1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/runtime 708s # Created snap.yaml in /tmp/test_portal-support-snap_JL7352/meta/snap.yaml 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/none/.dirs/runtime/snapctl 708s Unable to clean up temporary directory /tmp/test_portal-support-snap_JL7352/portal-support/snap/none: No such file or directory 708s ok 2 /portal-support/snap/none 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/system-config1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/system-data1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/runtime 708s # Created snap.yaml in /tmp/test_portal-support-snap_JL7352/meta/snap.yaml 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/all/.dirs/runtime/snapctl 708s Unable to clean up temporary directory /tmp/test_portal-support-snap_JL7352/portal-support/snap/all: No such file or directory 708s ok 3 /portal-support/snap/all 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/system-config1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/system-data1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/runtime 708s # Created snap.yaml in /tmp/test_portal-support-snap_JL7352/meta/snap.yaml 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only/.dirs/runtime/snapctl 708s Unable to clean up temporary directory /tmp/test_portal-support-snap_JL7352/portal-support/snap/desktop-only: No such file or directory 708s ok 4 /portal-support/snap/desktop-only 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/system-config1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/system-data1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/runtime 708s # Created snap.yaml in /tmp/test_portal-support-snap_JL7352/meta/snap.yaml 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only/.dirs/runtime/snapctl 708s Unable to clean up temporary directory /tmp/test_portal-support-snap_JL7352/portal-support/snap/network-only: No such file or directory 708s ok 5 /portal-support/snap/network-only 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/system-config1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/system-data1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/runtime 708s # Created snap.yaml in /tmp/test_portal-support-snap_JL7352/meta/snap.yaml 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only/.dirs/runtime/snapctl 708s Unable to clean up temporary directory /tmp/test_portal-support-snap_JL7352/portal-support/snap/gsettings-only: No such file or directory 708s ok 6 /portal-support/snap/gsettings-only 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/system-config1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/system-data1:/tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/runtime 708s # Created snap.yaml in /tmp/test_portal-support-snap_JL7352/meta/snap.yaml 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 708s # Created snapctl in /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically/.dirs/runtime/snapctl 708s Unable to clean up temporary directory /tmp/test_portal-support-snap_JL7352/portal-support/snap/updates-dynamically: No such file or directory 708s ok 7 /portal-support/snap/updates-dynamically 708s # End of snap tests 708s # End of portal-support tests 708s Unable to clean up temporary directory /tmp/test_portal-support-snap_JL7352: No such file or directory 708s ok - glib/portal-support-snap.test 708s # Running test: glib/portal-support-flatpak-full.test 708s TAP version 14 708s # random seed: R02S657c4f511a0735624ff6cfc8854250ee 708s 1..1 708s # Start of portal-support tests 708s # Start of flatpak tests 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/system-config1:/tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/system-data1:/tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/runtime 708s # Creating .flatpak-info in /tmp/test_portal-support-flatpak-full_WX8B62/portal-support/flatpak/full/.dirs/runtime/.flatpak-info 708s ok 1 /portal-support/flatpak/full 708s # End of flatpak tests 708s # End of portal-support tests 708s ok - glib/portal-support-flatpak-full.test 708s # Running test: glib/flags.test 708s TAP version 14 708s # random seed: R02S4bc4d4a2cc43026f8180ae2fa9e20d8b 708s 1..1 708s # Start of gobject tests 708s # Start of flags tests 708s ok 1 /gobject/flags/validate 708s # End of flags tests 708s # End of gobject tests 708s ok - glib/flags.test 708s # Running test: glib/gdbus-proxy-threads.test 708s TAP version 14 708s # random seed: R02S73ec25c86dfa45d4a78031825ee7dfd9 708s 1..1 708s # Start of gdbus tests 708s # Start of proxy tests 708s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/home 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/cache 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/system-config1:/tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/system-config2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/config 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/system-data1:/tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/system-data2 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/data 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/state 708s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy-threads_C4LB62/gdbus/proxy/vs-threads/.dirs/runtime 709s ok 1 /gdbus/proxy/vs-threads 709s # slow test /gdbus/proxy/vs-threads executed in 0.62 secs 709s # End of proxy tests 709s # End of gdbus tests 709s ok - glib/gdbus-proxy-threads.test 709s cleaning up pid 6422 709s # Running test: glib/network-monitor.test 709s TAP version 14 709s # random seed: R02Sd93ce9297c990c8ee91a80a2a9fe31cd 709s 1..4 709s # Start of network-monitor tests 709s # GLib-GIO-DEBUG: Failed to initialize portal (GNetworkMonitorPortal) for gio-network-monitor: Not using portals 709s # GLib-GIO-DEBUG: Failed to initialize networkmanager (GNetworkMonitorNM) for gio-network-monitor: NetworkManager not running 709s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation netlink (GNetworkMonitorNetlink) for ?gio-network-monitor? 709s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver? 709s ok - glib/network-monitor.test 709s # Running test: glib/debugcontroller.test 709s ok 1 /network-monitor/default 709s ok 2 /network-monitor/remove_default 709s ok 3 /network-monitor/add_networks 709s ok 4 /network-monitor/remove_networks 709s # End of network-monitor tests 709s TAP version 14 709s # random seed: R02S34d747bcbe27c28a80ccd6af2cd01fc1 709s 1..3 709s # Start of debug-controller tests 709s # Start of dbus tests 709s # /debug-controller/dbus/basic summary: Smoketest for construction and setting of a #GDebugControllerDBus. 709s # GLib-GIO-DEBUG: Debug output enabled 709s # GLib-GIO-DEBUG: Debug output disabled 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s ok 1 /debug-controller/dbus/basic 709s # /debug-controller/dbus/duplicate summary: Test that creating a second #GDebugControllerDBus on the same D-Bus connection fails. 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 709s ok 2 /debug-controller/dbus/duplicate 709s # /debug-controller/dbus/properties summary: Test getting and setting properties on a #GDebugControllerDBus. 709s ok 3 /debug-controller/dbus/properties # SKIP https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2486#note_1384102 709s # End of dbus tests 709s # End of debug-controller tests 709s ok - glib/debugcontroller.test 709s # Running test: glib/glistmodel.test 709s TAP version 14 709s # random seed: R02S58433bde6ad733b8084ee04b66c131d5 709s 1..18 709s # Start of glistmodel tests 709s # Start of store tests 709s ok 1 /glistmodel/store/properties 709s ok 2 /glistmodel/store/non-gobjects 709s ok 3 /glistmodel/store/boundaries 709s ok 4 /glistmodel/store/refcounts 709s ok 5 /glistmodel/store/sorted 709s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=795307 709s ok 6 /glistmodel/store/splice-replace-middle 709s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=795307 709s ok 7 /glistmodel/store/splice-replace-all 709s ok 8 /glistmodel/store/splice-noop 709s ok 9 /glistmodel/store/splice-remove-multiple 709s ok 10 /glistmodel/store/splice-add-multiple 709s ok 11 /glistmodel/store/splice-wrong-type 709s ok 12 /glistmodel/store/item-type 709s ok 13 /glistmodel/store/remove-all 709s ok 14 /glistmodel/store/sort 709s ok 15 /glistmodel/store/get-item-cache 709s ok 16 /glistmodel/store/items-changed 709s ok 17 /glistmodel/store/past-end 709s ok 18 /glistmodel/store/find 709s # End of store tests 709s # End of glistmodel tests 709s ok - glib/glistmodel.test 709s # Running test: glib/utf8-pointer.test 709s TAP version 14 709s # random seed: R02Scb4d161672ab6ec10d7949247408ffe1 709s 1..3 709s # Start of utf8 tests 710s ok 1 /utf8/offsets 710s # slow test /utf8/offsets executed in 0.89 secs 710s ok 2 /utf8/lengths 710s ok 3 /utf8/find 710s # End of utf8 tests 710s ok - glib/utf8-pointer.test 710s # Running test: glib/gdbus-proxy-well-known-name.test 710s TAP version 14 710s # random seed: R02Sacdd494de515b47910f9548595e52f07 710s 1..1 710s # Start of gdbus tests 710s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/home 710s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/cache 710s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/system-config1:/tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/system-config2 710s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/config 710s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/system-data1:/tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/system-data2 710s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/data 710s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/state 710s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy-well-known-name_LTNW52/gdbus/proxy-well-known-name/.dirs/runtime 710s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 710s ok - glib/gdbus-proxy-well-known-name.test 710s # Running test: glib/power-profile-monitor-portal.test 710s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 710s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 710s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 710s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 710s ok 1 /gdbus/proxy-well-known-name 710s # End of gdbus tests 710s # Executing: glib/power-profile-monitor-portal.test 710s TAP version 13 710s ok 1 __main__.TestPowerProfileMonitorPortal.test_power_profile_power_saver_enabled_portal # SKIP xdg-desktop-portal not available 710s ok 2 __main__.TestPowerProfileMonitorPortal.test_power_profile_power_saver_enabled_portal_default # SKIP xdg-desktop-portal not available 710s 1..2 711s ok - glib/power-profile-monitor-portal.test 711s # Running test: glib/gi-inspect-typelib.py.test 711s TAP version 13 711s ok 1 __main__.TestGIInspectTypelibCommandLine.test_help 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmpe4t73wjc 711s # Running: ['/usr/bin/gi-inspect-typelib', '--help'] 711s # Return code: 0 711s # Output: 711s # Usage: 711s # gi-inspect-typelib [OPTION…] NAMESPACE - Inspect GI typelib 711s # 711s # Help Options: 711s # -h, --help Show help options 711s # 711s # Application Options: 711s # --typelib-version=VERSION Typelib version to inspect 711s # --print-shlibs List the shared libraries the typelib requires 711s # --print-typelibs List other typelibs the inspected typelib requires 711s # Error: 711s ok 2 __main__.TestGIInspectTypelibCommandLine.test_invalid_typelib 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmp7jasd5rt 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', '--print-shlibs', 'AnInvalidNameSpace'] 711s # Return code: 1 711s # Output: 711s # 711s # Error: 711s # Failed to load typelib: Typelib file for namespace 'AnInvalidNameSpace' (any version) not found 711s ok 3 __main__.TestGIInspectTypelibCommandLine.test_no_args 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmpvrkqpshk 711s # Running: ['/usr/bin/gi-inspect-typelib'] 711s # Return code: 1 711s # Output: 711s # 711s # Error: 711s # Please specify exactly one namespace 711s ok 4 __main__.TestGIInspectTypelibForGLibTypelib.test_print_shlibs 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmpdg0qo2f4 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-shlibs', 'GLib', '--typelib-version=2.0'] 711s # Return code: 0 711s # Output: 711s # shlib: libgobject-2.0.so.0 711s # shlib: libglib-2.0.so.0 711s # Error: 711s ok 5 __main__.TestGIInspectTypelibForGLibTypelib.test_print_typelibs 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmpuwaday58 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', 'GLib', '--typelib-version=2.0'] 711s # Return code: 0 711s # Output: 711s # 711s # Error: 711s ok 6 __main__.TestGIInspectTypelibForGLibTypelib.test_print_typelibs_and_shlibs 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmpy_iavz2w 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', '--print-shlibs', 'GLib', '--typelib-version=2.0'] 711s # Return code: 0 711s # Output: 711s # shlib: libgobject-2.0.so.0 711s # shlib: libglib-2.0.so.0 711s # Error: 711s ok 7 __main__.TestGIInspectTypelibForGObjectTypelib.test_print_shlibs 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmpfspva6kf 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-shlibs', 'GObject', '--typelib-version=2.0'] 711s # Return code: 0 711s # Output: 711s # shlib: libgobject-2.0.so.0 711s # Error: 711s ok 8 __main__.TestGIInspectTypelibForGObjectTypelib.test_print_typelibs 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmp3kob1imy 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', 'GObject', '--typelib-version=2.0'] 711s # Return code: 0 711s # Output: 711s # typelib: GLib-2.0 711s # Error: 711s ok 9 __main__.TestGIInspectTypelibForGObjectTypelib.test_print_typelibs_and_shlibs 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmpsw0i3428 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', '--print-shlibs', 'GObject', '--typelib-version=2.0'] 711s # Return code: 0 711s # Output: 711s # shlib: libgobject-2.0.so.0 711s # typelib: GLib-2.0 711s # Error: 711s ok 10 __main__.TestGIInspectTypelibForGioTypelib.test_print_shlibs 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmpubjb1se0 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-shlibs', 'Gio', '--typelib-version=2.0'] 711s # Return code: 0 711s # Output: 711s # shlib: libgio-2.0.so.0 711s # Error: 711s ok 11 __main__.TestGIInspectTypelibForGioTypelib.test_print_typelibs 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmpw3ghwrkb 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', 'Gio', '--typelib-version=2.0'] 711s # Return code: 0 711s # Output: 711s # typelib: GObject-2.0 711s # typelib: GLib-2.0 711s # typelib: GModule-2.0 711s # Error: 711s ok 12 __main__.TestGIInspectTypelibForGioTypelib.test_print_typelibs_and_shlibs 711s # gi-inspect-typelib: /usr/bin/gi-inspect-typelib 711s # tmpdir: /tmp/tmp2f1nguid 711s # Running: ['/usr/bin/gi-inspect-typelib', '--print-typelibs', '--print-shlibs', 'Gio', '--typelib-version=2.0'] 711s # Return code: 0 711s # Output: 711s # shlib: libgio-2.0.so.0 711s # typelib: GObject-2.0 711s # typelib: GLib-2.0 711s # typelib: GModule-2.0 711s # Error: 711s 1..12 711s ok - glib/gi-inspect-typelib.py.test 711s # Running test: glib/testfilemonitor.test 711s ok - glib/testfilemonitor.test 711s # Running test: glib/gdbus-error.test 711s TAP version 14 711s # random seed: R02Sbe81860998bf6089e71551074f05a705 711s 1..8 711s # Start of monitor tests 711s ok 1 /monitor/atomic-replace # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 711s ok 2 /monitor/file-changes # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 711s ok 3 /monitor/dir-monitor # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 711s ok 4 /monitor/dir-not-existent # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 711s ok 5 /monitor/cross-dir-moves # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 711s ok 6 /monitor/finalize-in-callback # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 711s # /monitor/root summary: Test that GFileMonitor can monitor the root directory. 711s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3241 711s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 711s ok 7 /monitor/root # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 711s # Start of file tests 711s ok 8 /monitor/file/hard-links # SKIP https://gitlab.gnome.org/GNOME/glib/issues/1634 711s # End of file tests 711s # End of monitor tests 711s TAP version 14 711s # random seed: R02S65740bb1355943925ce7930bb88b18db 711s 1..4 711s # Start of gdbus tests 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/system-config1:/tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/system-data1:/tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-error_WJRR52/gdbus/registered-errors/.dirs/runtime 711s ok 1 /gdbus/registered-errors 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/system-config1:/tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/system-data1:/tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-error_WJRR52/gdbus/unregistered-errors/.dirs/runtime 711s ok 2 /gdbus/unregistered-errors 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/system-config1:/tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/system-data1:/tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-error_WJRR52/gdbus/transparent-gerror/.dirs/runtime 711s ok 3 /gdbus/transparent-gerror 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/system-config1:/tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/system-data1:/tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-error_WJRR52/gdbus/register-error/.dirs/runtime 711s ok - glib/gdbus-error.test 711s # Running test: glib/portal-support-flatpak-network-only.test 711s ok 4 /gdbus/register-error 711s # End of gdbus tests 711s TAP version 14 711s # random seed: R02S4781d4e1580be9dd6e90c070032388f0 711s 1..1 711s # Start of portal-support tests 711s # Start of flatpak tests 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/system-config1:/tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/system-data1:/tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/runtime 711s # Creating .flatpak-info in /tmp/test_portal-support-flatpak-network-only_WBBR52/portal-support/flatpak/network/.dirs/runtime/.flatpak-info 711s ok - glib/portal-support-flatpak-network-only.test 711s # Running test: glib/type.test 711s ok - glib/type.test 711s # Running test: glib/option-context.test 711s ok 1 /portal-support/flatpak/network 711s # End of flatpak tests 711s # End of portal-support tests 711s TAP version 14 711s # random seed: R02S43caecf5c21c69b6713a747ba7243e60 711s 1..6 711s # Start of type tests 711s ok 1 /type/registration-serial 711s ok 2 /type/interface-prerequisite 711s ok 3 /type/interface-check 711s ok 4 /type/next-base 711s ok 5 /type/is-a 711s # Invalid types can?t be queried. 711s # Unclassed types can?t be queried. 711s ok 6 /type/query 711s # End of type tests 711s TAP version 14 711s # random seed: R02Sb6072a361e9f84a2b40850dab1dd5e74 711s 1..58 711s # Start of option tests 711s ok 1 /option/basic 711s ok 2 /option/translate 711s ok 3 /option/strict-posix 711s # Start of help tests 711s ok 4 /option/help/options 711s ok 5 /option/help/no-options 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=697652 711s ok 6 /option/help/no-help-options 711s # Usage: 711s # /usr/libexec/installed-tests/glib/option-context [OPTION?] blabla 711s # 711s # Summary 711s # 711s # Help Options: 711s # -h, --help Show help options 711s # 711s # Application Options: 711s # -t, --test=Argument to use in test (deprecated) Test tests 711s # --test2 Tests also 711s # 711s # Description 711s # 711s ok 7 /option/help/deprecated 711s # End of help tests 711s # Start of group tests 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=504142 711s ok 8 /option/group/captions 711s ok 9 /option/group/main 711s ok 10 /option/group/error-hook 711s ok 11 /option/group/parse 711s # Start of captions tests 711s # Start of subprocess tests 711s # End of subprocess tests 711s # End of captions tests 711s # End of group tests 711s # Start of restoration tests 711s ok 12 /option/restoration/int 711s ok 13 /option/restoration/string 711s ok 14 /option/restoration/boolean 711s # End of restoration tests 711s # Start of arg tests 711s ok 15 /option/arg/reverse-string 711s ok 16 /option/arg/optional-int 711s # Start of repetition tests 711s ok 17 /option/arg/repetition/int 711s ok 18 /option/arg/repetition/string 711s ok 19 /option/arg/repetition/filename 711s ok 20 /option/arg/repetition/double 711s ok 21 /option/arg/repetition/locale 711s ok 22 /option/arg/repetition/int64 711s # End of repetition tests 711s # Start of array tests 711s ok 23 /option/arg/array/string 711s # End of array tests 711s # Start of callback tests 711s ok 24 /option/arg/callback/string 711s ok 25 /option/arg/callback/count 711s ok 26 /option/arg/callback/optional1 711s ok 27 /option/arg/callback/optional2 711s ok 28 /option/arg/callback/optional3 711s ok 29 /option/arg/callback/optional4 711s ok 30 /option/arg/callback/optional5 711s ok 31 /option/arg/callback/optional6 711s ok 32 /option/arg/callback/optional7 711s ok 33 /option/arg/callback/optional8 711s # End of callback tests 711s # Start of remaining tests 711s ok 34 /option/arg/remaining/callback 711s ok 35 /option/arg/remaining/callback-false 711s ok 36 /option/arg/remaining/non-option 711s ok 37 /option/arg/remaining/separator 711s ok 38 /option/arg/remaining/array 711s # End of remaining tests 711s # Start of ignore tests 711s ok 39 /option/arg/ignore/long 711s ok 40 /option/arg/ignore/short 711s ok 41 /option/arg/ignore/arg 711s # End of ignore tests 711s # Start of rest tests 711s ok 42 /option/arg/rest/non-option 711s ok 43 /option/arg/rest/separator1 711s ok 44 /option/arg/rest/separator2 711s ok 45 /option/arg/rest/separator3 711s ok 46 /option/arg/rest/separator4 711s ok 47 /option/arg/rest/separator5 711s # End of rest tests 711s # End of arg tests 711s # Start of context tests 711s ok 48 /option/context/add 711s ok 49 /option/context/empty2 711s ok 50 /option/context/empty3 711s # End of context tests 711s # Start of bug tests 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=166609 711s ok 51 /option/bug/unknown-short 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=168008 711s ok 52 /option/bug/lonely-dash 711s ok 53 /option/bug/triple-dash 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=305576 711s ok 54 /option/bug/missing-arg 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=577638 711s ok 55 /option/bug/dash-arg 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=729563 711s ok 56 /option/bug/short-remaining 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=646926 711s ok 57 /option/bug/double-free 711s ok 58 /option/bug/double-zero 711s # End of bug tests 711s # End of option tests 711s ok - glib/option-context.test 711s # Running test: glib/utils-c-89.test 711s TAP version 14 711s # random seed: R02Seb4a24ffe3018a2cce8cf7cbb7705a31 711s 1..41 711s # Start of utils tests 711s ok 1 /utils/language-names 711s ok 2 /utils/locale-variants 711s ok 3 /utils/version 711s ok 4 /utils/appname 711s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847 711s # /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name. 711s ok 5 /utils/prgname-thread-safety 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969 711s # /utils/tmpdir summary: Test that g_get_tmp_dir() returns a correct default if TMPDIR is set to the empty string 711s ok 6 /utils/tmpdir 711s ok 7 /utils/basic_bits 711s ok 8 /utils/bits 711s ok 9 /utils/swap 711s ok 10 /utils/find-program 711s ok 11 /utils/find-program-for-path 711s ok 12 /utils/debug 711s ok 13 /utils/codeset 711s ok 14 /utils/codeset2 711s ok 15 /utils/console-charset 711s ok 16 /utils/gettext 711s ok 17 /utils/username 711s ok 18 /utils/realname 711s ok 19 /utils/hostname 711s ok 20 /utils/xdgdirs 711s ok 21 /utils/specialdir 711s # NAME: Ubuntu 711s ok 22 /utils/os-info 711s ok 23 /utils/clear-pointer 711s ok 24 /utils/clear-pointer-cast 711s ok 25 /utils/take-pointer 711s ok 26 /utils/clear-source 711s ok 27 /utils/misc-mem 711s # /utils/aligned-mem summary: Aligned memory allocator 711s # Alignment must not be zero 711s # Alignment must be a power of two 711s # Alignment must be a multiple of sizeof(void*) 711s ok 28 /utils/aligned-mem 711s # /utils/free-sized summary: Check that g_free_sized() works 711s ok 29 /utils/free-sized 711s ok 30 /utils/nullify 711s ok - glib/utils-c-89.test 711s ok 31 /utils/atexit 711s ok 32 /utils/check-setuid 711s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663 711s ok 33 /utils/int-limits 711s ok 34 /utils/clear-list 711s ok 35 /utils/clear-slist 711s ok 36 /utils/steal-handle-id 711s # Start of specialdir tests 711s ok 37 /utils/specialdir/desktop 711s # End of specialdir tests 711s # Start of clear-pointer tests 711s ok 38 /utils/clear-pointer/side-effects 711s # End of clear-pointer tests 711s # Start of aligned-mem tests 711s # /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer 711s ok 39 /utils/aligned-mem/alignment 711s # /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation 711s ok 40 /utils/aligned-mem/zeroed 711s # /utils/aligned-mem/free-sized summary: Check that g_aligned_free_sized() works 711s ok 41 /utils/aligned-mem/free-sized 711s # Start of subprocess tests 711s # End of subprocess tests 711s # End of aligned-mem tests 711s # End of utils tests 711s # Running test: glib/filter-streams.test 711s TAP version 14 711s # random seed: R02S8a741df13c57f4c71a6e9e134a4390a7 711s 1..4 711s # Start of filter-stream tests 711s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=568394 711s ok 1 /filter-stream/input 711s ok 2 /filter-stream/output 711s ok 3 /filter-stream/async-input 711s ok 4 /filter-stream/async-output 711s # End of filter-stream tests 711s ok - glib/filter-streams.test 711s # Running test: glib/types.test 711s TAP version 14 711s # random seed: R02Sb691cd348e64f82e6c71e697a0ed78ca 711s 1..1 711s # Start of types tests 711s ok 1 /types/basic_types 711s # End of types tests 711s ok - glib/types.test 711s # Running test: glib/gdbus-connection.test 711s TAP version 14 711s # random seed: R02Sf757bd8cc0ad8d5bc751c0bfbddd5bf0 711s 1..9 711s # Start of gdbus tests 711s # Start of connection tests 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/system-config1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/system-data1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/bus-failure/.dirs/runtime 711s ok 1 /gdbus/connection/bus-failure 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/system-config1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/system-data1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/basic/.dirs/runtime 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s ok 2 /gdbus/connection/basic 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/system-config1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/system-data1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/life-cycle/.dirs/runtime 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s ok 3 /gdbus/connection/life-cycle 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/system-config1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/system-data1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/send/.dirs/runtime 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s ok 4 /gdbus/connection/send 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/system-config1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/system-data1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signals/.dirs/runtime 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s ok 5 /gdbus/connection/signals 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/system-config1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/system-data1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/signal-match-rules/.dirs/runtime 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s ok 6 /gdbus/connection/signal-match-rules 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/system-config1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/system-data1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/filter/.dirs/runtime 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s ok 7 /gdbus/connection/filter 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/system-config1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/system-data1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/serials/.dirs/runtime 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s ok 8 /gdbus/connection/serials 711s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/home 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/cache 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/system-config1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/system-config2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/config 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/system-data1:/tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/system-data2 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/data 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/state 711s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection_N9CZ52/gdbus/connection/cancel/.dirs/runtime 711s # /gdbus/connection/cancel summary: Test that cancelling one of two racing g_bus_get() calls does not cancel the other one 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 711s ok 9 /gdbus/connection/cancel 711s # End of connection tests 711s # End of gdbus tests 711s ok - glib/gdbus-connection.test 711s # Running test: glib/gvariant.test 711s TAP version 14 711s # random seed: R02Sd4eeaf550a7a4461846bd446b51e6a87 711s 1..69 711s # Start of gvariant tests 711s ok 1 /gvariant/type 711s ok 2 /gvariant/typeinfo 711s ok 3 /gvariant/string 711s ok 4 /gvariant/utf8 711s ok 5 /gvariant/utf8-new-strings 711s ok 6 /gvariant/containers 711s ok 7 /gvariant/format-strings 711s ok 8 /gvariant/invalid-varargs 711s ok 9 /gvariant/varargs 711s ok 10 /gvariant/valist 711s ok 11 /gvariant/builder-memory 712s ok 12 /gvariant/hashing 712s ok 13 /gvariant/byteswap 712s ok 14 /gvariant/parser 712s ok 15 /gvariant/parse-failures 712s ok 16 /gvariant/parse-positional 712s ok 17 /gvariant/floating 712s ok 18 /gvariant/bytestring 712s ok 19 /gvariant/lookup-value 712s ok 20 /gvariant/lookup 712s ok 21 /gvariant/compare 712s ok 22 /gvariant/equal 712s ok 23 /gvariant/fixed-array 712s ok 24 /gvariant/check-format-string 712s ok 25 /gvariant/checksum-basic 712s ok 26 /gvariant/checksum-nested 712s ok 27 /gvariant/gbytes 712s ok 28 /gvariant/print-context 712s ok 29 /gvariant/error-quark 712s ok 30 /gvariant/stack-builder-init 712s ok 31 /gvariant/stack-builder-init-static 712s ok 32 /gvariant/stack-builder-init-unset 712s ok 33 /gvariant/stack-dict-init 712s ok 34 /gvariant/unaligned-construction 712s # Start of type tests 712s # Start of string-scan tests 712s # Start of recursion tests 712s ok 35 /gvariant/type/string-scan/recursion/tuple 712s ok 36 /gvariant/type/string-scan/recursion/array 712s # End of recursion tests 712s # End of string-scan tests 712s # End of type tests 712s # Start of serialiser tests 712s ok 37 /gvariant/serialiser/maybe 712s ok 38 /gvariant/serialiser/array 712s ok 39 /gvariant/serialiser/tuple 712s ok 40 /gvariant/serialiser/variant 712s ok 41 /gvariant/serialiser/strings 712s ok 42 /gvariant/serialiser/byteswap 712s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1865 712s # /gvariant/serialiser/children summary: Test that getting a child variant before and after serialisation of the parent works 712s ok 43 /gvariant/serialiser/children 712s # Start of byteswap tests 712s ok 44 /gvariant/serialiser/byteswap/zero-sized 712s # End of byteswap tests 712s # Start of fuzz tests 713s ok 45 /gvariant/serialiser/fuzz/1% 713s ok 46 /gvariant/serialiser/fuzz/5% 713s ok 47 /gvariant/serialiser/fuzz/9% 714s ok 48 /gvariant/serialiser/fuzz/13% 714s ok 49 /gvariant/serialiser/fuzz/17% 714s # End of fuzz tests 714s # End of serialiser tests 714s # Start of utf8 tests 714s # Start of subprocess tests 714s # End of subprocess tests 714s # End of utf8 tests 714s # Start of varargs tests 714s # Start of subprocess tests 714s # End of subprocess tests 714s # End of varargs tests 714s # Start of byteswap tests 714s # /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. 714s ok 50 /gvariant/byteswap/non-normal-non-aligned 714s # End of byteswap tests 714s # Start of parser tests 714s ok 51 /gvariant/parser/integer-bounds 714s ok 52 /gvariant/parser/recursion 714s # Start of recursion tests 714s ok 53 /gvariant/parser/recursion/typedecls 714s # /gvariant/parser/recursion/maybes summary: Test that nested maybes are handled correctly when parsing text-form variants 714s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2782 714s # Text form 0: @mmmu 5 714s # Text form 1: @mmmas ['hello'] 714s # Text form 2: @mmmu just just nothing 714s # Text form 3: @mmmas just just nothing 714s # Text form 4: @mmmu just nothing 714s # Text form 5: @mmmas just nothing 714s # Text form 6: @mmmu nothing 714s # Text form 7: @mmmas nothing 714s ok - glib/gvariant.test 714s # Running test: glib/gdbus-test-codegen-old.test 714s ok 54 /gvariant/parser/recursion/maybes 714s # End of recursion tests 714s # End of parser tests 714s # Start of parse tests 714s # Start of subprocess tests 714s # End of subprocess tests 714s # End of parse tests 714s # Start of normal-checking tests 714s ok 55 /gvariant/normal-checking/tuples 714s ok 56 /gvariant/normal-checking/array-offsets 714s ok 57 /gvariant/normal-checking/array-offsets2 714s ok 58 /gvariant/normal-checking/tuple-offsets 714s ok 59 /gvariant/normal-checking/tuple-offsets2 714s ok 60 /gvariant/normal-checking/tuple-offsets3 714s ok 61 /gvariant/normal-checking/tuple-offsets4 714s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2840 714s ok 62 /gvariant/normal-checking/tuple-offsets5 714s ok 63 /gvariant/normal-checking/empty-object-path 714s # Start of array-offsets tests 714s ok 64 /gvariant/normal-checking/array-offsets/overlapped 714s ok 65 /gvariant/normal-checking/array-offsets/minimal-sized 714s # End of array-offsets tests 714s # Start of tuple-offsets tests 714s ok 66 /gvariant/normal-checking/tuple-offsets/minimal-sized 714s # End of tuple-offsets tests 714s # End of normal-checking tests 714s # Start of recursion-limits tests 714s ok 67 /gvariant/recursion-limits/variant-in-variant 714s ok 68 /gvariant/recursion-limits/array-in-variant 714s # End of recursion-limits tests 714s # End of gvariant tests 714s # Start of gvarianttype tests 714s ok 69 /gvarianttype/hash 714s # End of gvarianttype tests 714s TAP version 14 714s # random seed: R02Sf2ad791aa5ef4f0fcab6a2dd203cf7e6 714s 1..8 714s # Start of gdbus tests 714s # Start of codegen tests 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/annotations/.dirs/runtime 714s ok 1 /gdbus/codegen/annotations 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/interface_stability/.dirs/runtime 714s ok 2 /gdbus/codegen/interface_stability 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/object-manager/.dirs/runtime 714s ok 3 /gdbus/codegen/object-manager 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/property-naming/.dirs/runtime 714s ok 4 /gdbus/codegen/property-naming 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/autocleanups/.dirs/runtime 714s ok 5 /gdbus/codegen/autocleanups 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/deprecations/.dirs/runtime 714s ok 6 /gdbus/codegen/deprecations 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/standalone-interface-info/.dirs/runtime 714s ok 7 /gdbus/codegen/standalone-interface-info 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/system-config1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/system-data1:/tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen-old_U4S652/gdbus/codegen/unix-fd-list/.dirs/runtime 714s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1726 714s ok 8 /gdbus/codegen/unix-fd-list 714s # End of codegen tests 714s # End of gdbus tests 714s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 714s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 714s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 714s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 714s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 714s ok - glib/gdbus-test-codegen-old.test 714s # Running test: glib/relation.test 714s ok - glib/relation.test 714s TAP version 14 714s # random seed: R02S9e1564a53dbf67f302b9d6d6d183666b 714s 1..1 714s # Start of glib tests 714s ok 1 /glib/relation 714s # End of glib tests 714s # Running test: glib/module-test-library.test 714s TAP version 14 714s # random seed: R02Sf8bddbe9cd97a7e0ec3bfd3610dd809e 714s 1..3 714s # Start of module tests 714s ok 1 /module/basics 714s # /module/invalid-libtool-archive summary: Test that opening an invalid .la file fails 714s ok 2 /module/invalid-libtool-archive 714s # /module/local-binding summary: Test that binding a library's symbols locally does not add them globally 714s ok 3 /module/local-binding 714s # End of module tests 714s ok - glib/module-test-library.test 714s # Running test: glib/testing.test 714s ok - glib/testing.test 714s TAP version 14 714s # random seed: R02Sd9058fa13fe6510bf50f41ff0af31954 714s 1..1 714s # Start of assert tests 714s ok 1 /assert/finalize_object 714s # Start of finalize_object tests 714s # Start of subprocess tests 714s # End of subprocess tests 714s # End of finalize_object tests 714s # End of assert tests 714s # Running test: glib/cxx-11.test 714s TAP version 14 714s # random seed: R02S1147b4a2af4bcd9753576f640bcfdd17 714s 1..2 714s # Start of gtask tests 714s # 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. 714s ok 1 /gtask/name 714s # Start of name tests 714s # 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. 714s ok 2 /gtask/name/macro-wrapper 714s # End of name tests 714s # End of gtask tests 714s ok - glib/cxx-11.test 714s # Running test: glib/gthash.test 714s TAP version 14 714s # random seed: R02S1c3f205100536fc02b9e30e724fcb135 714s 1..1 714s # Start of gthash tests 714s ok 1 /gthash/build-retrieve 714s # End of gthash tests 714s ok - glib/gthash.test 714s # Running test: glib/gutils-user-database.test 714s TAP version 14 714s # random seed: R02S239943ea14ed6efba6f52bbce739cf31 714s 1..1 714s # Start of gutils tests 714s ok 1 /gutils/get_user_database_entry 714s # End of gutils tests 714s ok - glib/gutils-user-database.test 714s # Running test: glib/gdbus-non-socket.test 714s TAP version 14 714s # random seed: R02Sa7ad3c98019cad56cfb7380753062921 714s 1..1 714s # Start of gdbus tests 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/system-config1:/tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/system-data1:/tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-non-socket_KZS352/gdbus/non-socket/.dirs/runtime 714s ok 1 /gdbus/non-socket 714s # End of gdbus tests 714s ok - glib/gdbus-non-socket.test 714s # Running test: glib/642026.test 714s TAP version 14 714s # random seed: R02S0c69a696d04118b47dabcf95240d61cb 714s 1..1 714s # Start of glib tests 714s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642026 714s ok 1 /glib/642026 714s ok - glib/642026.test 714s # End of glib tests 714s # Running test: glib/gdbus-auth.test 714s TAP version 14 714s # random seed: R02S557bf3043106782c04a05f16f464dd81 714s 1..5 714s # Start of gdbus tests 714s # Start of auth tests 714s # Start of client tests 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/system-config1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/system-data1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/EXTERNAL/.dirs/runtime 714s ok 1 /gdbus/auth/client/EXTERNAL 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/system-config1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/system-data1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/client/DBUS_COOKIE_SHA1/.dirs/runtime 714s ok 2 /gdbus/auth/client/DBUS_COOKIE_SHA1 714s # End of client tests 714s # Start of server tests 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/system-config1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/system-data1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/ANONYMOUS/.dirs/runtime 714s ok 3 /gdbus/auth/server/ANONYMOUS 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/system-config1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/system-data1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/EXTERNAL/.dirs/runtime 714s ok 4 /gdbus/auth/server/EXTERNAL 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/system-config1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/system-data1:/tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-auth_EUKA62/gdbus/auth/server/DBUS_COOKIE_SHA1/.dirs/runtime 714s ok 5 /gdbus/auth/server/DBUS_COOKIE_SHA1 714s # End of server tests 714s # End of auth tests 714s # End of gdbus tests 714s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 714s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 714s ok - glib/gdbus-auth.test 714s # Running test: glib/gdbus-sasl.test 714s TAP version 14 714s # random seed: R02S4c25079d1106eb40835cca2ea6f1d498 714s 1..1 714s # Start of gdbus tests 714s # Start of sasl tests 714s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/home 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/cache 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/system-config1:/tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/system-config2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/config 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/system-data1:/tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/system-data2 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/data 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/state 714s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-sasl_UJGA62/gdbus/sasl/server/.dirs/runtime 714s # New handshake: EXTERNAL with incorrect initial response 714s # C:“AUTH EXTERNAL 30†714s # Expect: /^REJECTED.*$/ 714s # S:“REJECTED EXTERNAL DBUS_COOKIE_SHA1†714s # New handshake: EXTERNAL without initial response, failing to authenticate 714s # C:“AUTH EXTERNAL†714s # Expect: /^DATA$/ 714s # S:“DATA†714s # C:“DATA 30†714s # Expect: /^REJECTED.*$/ 714s # S:“REJECTED EXTERNAL DBUS_COOKIE_SHA1†714s # New handshake: EXTERNAL with initial response 714s # C:“AUTH EXTERNAL 31303030†714s # Expect: /^OK [0-9a-f]+$/ 714s # S:“OK f8ded59eaf8c159b28a5c607681a5985†714s # New handshake: EXTERNAL without initial response 714s # C:“AUTH EXTERNAL†714s # Expect: /^DATA$/ 714s # S:“DATA†714s # C:“DATA 31303030†714s # Expect: /^OK [0-9a-f]+$/ 714s # S:“OK f8ded59eaf8c159b28a5c607681a5985†714s # New handshake: EXTERNAL with empty authorization identity 714s # C:“AUTH EXTERNAL†714s # Expect: /^DATA$/ 714s # S:“DATA†714s # C:“DATA†714s # Expect: /^OK [0-9a-f]+$/ 714s # S:“OK f8ded59eaf8c159b28a5c607681a5985†714s # New handshake: EXTERNAL with empty authorization identity and whitespace 714s # C:“AUTH EXTERNAL†714s # Expect: /^DATA$/ 714s # S:“DATA†714s # C:“DATA †714s # Expect: /^OK [0-9a-f]+$/ 714s # S:“OK f8ded59eaf8c159b28a5c607681a5985†714s ok 1 /gdbus/sasl/server 714s # End of sasl tests 714s # End of gdbus tests 714s ok - glib/gdbus-sasl.test 714s # Running test: glib/power-profile-monitor-dbus.test 715s TAP version 13 715s ok 1 __main__.TestPowerProfileMonitor.test_power_profile_power_saver_enabled 715s 1..1 715s ok - glib/power-profile-monitor-dbus.test 715s # Running test: glib/properties-introspection.test 715s TAP version 14 715s # random seed: R02Sea61a06052f24de380fab7125d99d637 715s 1..2 715s # Start of properties tests 715s # /properties/introspection summary: Verify that introspecting properties on an interface initializes the GParamSpecPool. 715s ok 1 /properties/introspection 715s # /properties/collision summary: Verify that multiple threads create a single GParamSpecPool. 715s ok 2 /properties/collision 715s # End of properties tests 715s ok - glib/properties-introspection.test 715s # Running test: glib/signals-refcount2.test 715s TAP version 14 715s # random seed: R02S8ce5973e4ef6dbcba1b4708f7cd82fd2 715s 1..1 715s # Start of gobject tests 715s # Start of refcount tests 715s # init 0xbec8c5aaadd0 715s # 715s # init 0xbec8c5aa1610 715s # 715s # Executing: glib/signals-refcount2.test 720s # dispose 0xbec8c5aaadd0! 720s # 720s # dispose 0xbec8c5aa1610! 720s # 720s ok 1 /gobject/refcount/signals 720s # slow test /gobject/refcount/signals executed in 5.00 secs 720s # End of refcount tests 720s # End of gobject tests 720s ok - glib/signals-refcount2.test 720s # Running test: glib/converter.test 720s TAP version 14 720s # random seed: R02S7542812084c67d94b5cee89beb40c7a1 720s 1..2 720s # Start of converter tests 720s ok 1 /converter/bytes 720s ok 2 /converter/extra-bytes-at-end 720s # End of converter tests 720s ok - glib/converter.test 720s # Running test: glib/642026-ec.test 720s TAP version 14 720s # random seed: R02Sd125e0f7606cb226a1f3e9c71cca508e 720s 1..1 720s # Start of glib tests 720s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642026 720s ok 1 /glib/642026 720s # End of glib tests 720s ok - glib/642026-ec.test 720s # Running test: glib/socket-address.test 720s ok - glib/socket-address.test 720s # Running test: glib/slist.test 720s TAP version 14 720s # random seed: R02Sf897fbac9ab2030c91f4f9bbc47ce46e 720s 1..2 720s # Start of socket tests 720s # Start of address tests 720s # Start of unix tests 720s ok 1 /socket/address/unix/construct 720s ok 2 /socket/address/unix/to-string 720s # End of unix tests 720s # End of address tests 720s # End of socket tests 720s ok - glib/slist.test 720s TAP version 14 720s # random seed: R02S2078b8b2bef0eb88336b86eb885ee064 720s 1..14 720s # Start of slist tests 720s ok 1 /slist/sort 720s ok 2 /slist/sort-with-data 720s ok 3 /slist/insert-sorted 720s ok 4 /slist/insert-sorted-with-data 720s ok 5 /slist/reverse 720s ok 6 /slist/nth 720s ok 7 /slist/remove 720s ok 8 /slist/remove-all 720s ok 9 /slist/insert 720s ok 10 /slist/position 720s ok 11 /slist/concat 720s ok 12 /slist/copy 720s # Start of sort tests 720s ok 13 /slist/sort/stable 720s # End of sort tests 720s # Start of copy tests 720s ok 14 /slist/copy/deep 720s # End of copy tests 720s # End of slist tests 720s # Running test: glib/string.test 720s TAP version 14 720s # random seed: R02S1a5ffe58d5b8ac769402900966a0c4cf 720s 1..23 720s # Start of string tests 720s ok 1 /string/test-string-chunks 720s ok 2 /string/test-string-chunk-insert 720s ok 3 /string/test-string-new 720s ok 4 /string/test-string-printf 720s ok 5 /string/test-string-assign 720s ok 6 /string/test-string-append-c 720s ok 7 /string/test-string-append 720s ok 8 /string/test-string-append-vprintf 720s ok 9 /string/test-string-prepend-c 720s ok 10 /string/test-string-prepend 720s ok 11 /string/test-string-insert 720s ok - glib/string.test 720s # Running test: glib/inet-address.test 720s ok - glib/inet-address.test 720s # Running test: glib/gdbus-test-codegen.test 720s ok 12 /string/test-string-insert-unichar 720s ok 13 /string/test-string-equal 720s ok 14 /string/test-string-truncate 720s ok 15 /string/test-string-overwrite 720s ok 16 /string/test-string-nul-handling 720s ok 17 /string/test-string-up-down 720s ok 18 /string/test-string-set-size 720s ok 19 /string/test-string-to-bytes 720s # 0: Replacing "bar" with "baz" (limit 0) in "foo bar foo baz foo bar foobarbaz" 720s # -> 3 replacements, "foo baz foo baz foo baz foobazbaz" 720s # 1: Replacing "baz" with "bar" (limit 3) in "foo baz foo baz foo baz foobazbaz" 720s # -> 3 replacements, "foo bar foo bar foo bar foobazbaz" 720s # 2: Replacing "foobar" with "bar" (limit 1) in "foo bar foo bar foo bar foobazbaz" 720s # -> 0 replacements, "foo bar foo bar foo bar foobazbaz" 720s # 3: Replacing "a" with "abcdefghijkl" (limit 0) in "aaaaaaaa" 720s # -> 8 replacements, "abcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijklabcdefghijkl" 720s # 4: Replacing "$LIB" with "lib32" (limit 0) in "/usr/$LIB/libMangoHud.so" 720s # -> 1 replacements, "/usr/lib32/libMangoHud.so" 720s # 5: Replacing "o" with "" (limit 0) in "food for foals" 720s # -> 4 replacements, "fd fr fals" 720s # 6: Replacing "a" with "aaa" (limit 0) in "aaa" 720s # -> 3 replacements, "aaaaaaaaa" 720s # 7: Replacing "a" with "" (limit 0) in "aaa" 720s # -> 3 replacements, "" 720s # 8: Replacing "aa" with "bb" (limit 0) in "aaa" 720s # -> 1 replacements, "bba" 720s # 9: Replacing "" with "bar" (limit 0) in "foo" 720s # -> 4 replacements, "barfbarobarobar" 720s # 10: Replacing "" with "bar" (limit 1) in "foo" 720s # -> 1 replacements, "barfoo" 720s # 11: Replacing "" with "bar" (limit 2) in "foo" 720s # -> 2 replacements, "barfbaroo" 720s # 12: Replacing "" with "bar" (limit 3) in "foo" 720s # -> 3 replacements, "barfbarobaro" 720s # 13: Replacing "" with "bar" (limit 4) in "foo" 720s # -> 4 replacements, "barfbarobarobar" 720s # 14: Replacing "" with "bar" (limit 5) in "foo" 720s # -> 4 replacements, "barfbarobarobar" 720s # 15: Replacing "" with "x" (limit 0) in "" 720s # -> 1 replacements, "x" 720s # 16: Replacing "" with "" (limit 0) in "" 720s # -> 1 replacements, "" 720s # 17: Replacing "" with "aaaaaaaaaaaa" (limit 0) in "bbbbbbbbb" 720s # -> 10 replacements, "aaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaabaaaaaaaaaaaa" 720s ok 20 /string/test-string-replace 720s ok 21 /string/test-string-steal 720s ok 22 /string/test-string-new-take 720s # Start of test-string-new-take tests 720s ok 23 /string/test-string-new-take/null 720s # End of test-string-new-take tests 720s # End of string tests 720s TAP version 14 720s # random seed: R02S300f813a20c547f1f5af68fa8a7a73df 720s 1..11 720s # Start of inet-address tests 720s ok 1 /inet-address/parse 720s ok 2 /inet-address/any 720s ok 3 /inet-address/loopback 720s ok 4 /inet-address/bytes 720s ok 5 /inet-address/property 720s # End of inet-address tests 720s # Start of socket-address tests 720s ok 6 /socket-address/basic 720s ok 7 /socket-address/to-string 720s # End of socket-address tests 720s # Start of address-mask tests 720s ok 8 /address-mask/parse 720s ok 9 /address-mask/property 720s ok 10 /address-mask/equal 720s ok 11 /address-mask/match 720s # End of address-mask tests 720s TAP version 14 720s # random seed: R02S2946d179345444195f569d2877f2d2e6 720s 1..8 720s # Start of gdbus tests 720s # Start of codegen tests 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/system-config1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/system-data1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/annotations/.dirs/runtime 720s ok 1 /gdbus/codegen/annotations 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/system-config1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/system-data1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/interface_stability/.dirs/runtime 720s ok 2 /gdbus/codegen/interface_stability 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/system-config1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/system-data1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/object-manager/.dirs/runtime 720s ok 3 /gdbus/codegen/object-manager 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/system-config1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/system-data1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/property-naming/.dirs/runtime 720s ok 4 /gdbus/codegen/property-naming 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/system-config1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/system-data1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/autocleanups/.dirs/runtime 720s ok 5 /gdbus/codegen/autocleanups 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/system-config1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/system-data1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/deprecations/.dirs/runtime 720s ok 6 /gdbus/codegen/deprecations 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/system-config1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/system-data1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/standalone-interface-info/.dirs/runtime 720s ok 7 /gdbus/codegen/standalone-interface-info 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/system-config1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/system-data1:/tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-test-codegen_S4ZS52/gdbus/codegen/unix-fd-list/.dirs/runtime 720s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1726 720s ok 8 /gdbus/codegen/unix-fd-list 720s # End of codegen tests 720s # End of gdbus tests 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok - glib/gdbus-test-codegen.test 720s # Running test: glib/utf8-performance.test 720s TAP version 14 720s # random seed: R02Sc1bb356170e46b2199b2fec73e884afe 720s 1..36 720s # Start of utf8 tests 720s # Start of perf tests 720s # Start of get_char tests 720s # max perf: inf MB/s 720s ok 1 /utf8/perf/get_char/ascii 720s # max perf: 67.0 MB/s 720s ok 2 /utf8/perf/get_char/latin1 720s # max perf: 160.0 MB/s 720s ok 3 /utf8/perf/get_char/cyrillic 720s # max perf: 156.0 MB/s 720s ok 4 /utf8/perf/get_char/han 720s # End of get_char tests 720s # Start of get_char-backwards tests 720s # max perf: 43.0 MB/s 720s ok 5 /utf8/perf/get_char-backwards/ascii 720s # max perf: 67.0 MB/s 720s ok 6 /utf8/perf/get_char-backwards/latin1 720s # max perf: 160.0 MB/s 720s ok 7 /utf8/perf/get_char-backwards/cyrillic 720s # max perf: 156.0 MB/s 720s ok 8 /utf8/perf/get_char-backwards/han 720s # End of get_char-backwards tests 720s # Start of get_char_validated tests 720s # max perf: inf MB/s 720s ok 9 /utf8/perf/get_char_validated/ascii 720s # max perf: inf MB/s 720s ok 10 /utf8/perf/get_char_validated/latin1 720s # max perf: 160.0 MB/s 720s ok 11 /utf8/perf/get_char_validated/cyrillic 720s # max perf: 156.0 MB/s 720s ok 12 /utf8/perf/get_char_validated/han 720s # End of get_char_validated tests 720s # Start of utf8_to_ucs4 tests 720s # max perf: inf MB/s 720s ok 13 /utf8/perf/utf8_to_ucs4/ascii 720s # max perf: 67.0 MB/s 720s ok 14 /utf8/perf/utf8_to_ucs4/latin1 720s # max perf: 160.0 MB/s 720s ok 15 /utf8/perf/utf8_to_ucs4/cyrillic 720s # max perf: inf MB/s 720s ok 16 /utf8/perf/utf8_to_ucs4/han 720s # End of utf8_to_ucs4 tests 720s # Start of utf8_to_ucs4-sized tests 720s # max perf: inf MB/s 720s ok 17 /utf8/perf/utf8_to_ucs4-sized/ascii 720s # max perf: 67.0 MB/s 720s ok 18 /utf8/perf/utf8_to_ucs4-sized/latin1 720s # max perf: 160.0 MB/s 720s ok 19 /utf8/perf/utf8_to_ucs4-sized/cyrillic 720s # max perf: inf MB/s 720s ok 20 /utf8/perf/utf8_to_ucs4-sized/han 720s # End of utf8_to_ucs4-sized tests 720s # Start of utf8_to_ucs4_fast tests 720s # max perf: 43.0 MB/s 720s ok 21 /utf8/perf/utf8_to_ucs4_fast/ascii 720s # max perf: 67.0 MB/s 720s ok 22 /utf8/perf/utf8_to_ucs4_fast/latin1 720s # max perf: 160.0 MB/s 720s ok 23 /utf8/perf/utf8_to_ucs4_fast/cyrillic 720s # max perf: 156.0 MB/s 720s ok 24 /utf8/perf/utf8_to_ucs4_fast/han 720s # End of utf8_to_ucs4_fast tests 720s # Start of utf8_to_ucs4_fast-sized tests 720s # max perf: inf MB/s 720s ok 25 /utf8/perf/utf8_to_ucs4_fast-sized/ascii 720s # max perf: 67.0 MB/s 720s ok 26 /utf8/perf/utf8_to_ucs4_fast-sized/latin1 720s # max perf: 160.0 MB/s 720s ok 27 /utf8/perf/utf8_to_ucs4_fast-sized/cyrillic 720s # max perf: 156.0 MB/s 720s ok 28 /utf8/perf/utf8_to_ucs4_fast-sized/han 720s # End of utf8_to_ucs4_fast-sized tests 720s # Start of utf8_validate tests 720s # max perf: inf MB/s 720s ok 29 /utf8/perf/utf8_validate/ascii 720s # max perf: inf MB/s 720s ok 30 /utf8/perf/utf8_validate/latin1 720s # max perf: inf MB/s 720s ok 31 /utf8/perf/utf8_validate/cyrillic 720s # max perf: 156.0 MB/s 720s ok 32 /utf8/perf/utf8_validate/han 720s # End of utf8_validate tests 720s # Start of utf8_validate-sized tests 720s # max perf: inf MB/s 720s ok 33 /utf8/perf/utf8_validate-sized/ascii 720s # max perf: inf MB/s 720s ok 34 /utf8/perf/utf8_validate-sized/latin1 720s # max perf: 160.0 MB/s 720s ok 35 /utf8/perf/utf8_validate-sized/cyrillic 720s # max perf: 156.0 MB/s 720s ok 36 /utf8/perf/utf8_validate-sized/han 720s # End of utf8_validate-sized tests 720s # End of perf tests 720s # End of utf8 tests 720s ok - glib/utf8-performance.test 720s # Running test: glib/array-test.test 720s TAP version 14 720s # random seed: R02S9ec19709d61d0a85ff48148e0cedbc60 720s 1..113 720s # Start of array tests 720s ok 1 /array/ref-count 720s ok 2 /array/steal 720s ok 3 /array/clear-func 720s ok 4 /array/binary-search 720s # /array/copy-sized summary: Test that copying a newly-allocated sized array works. 720s ok 5 /array/copy-sized 720s ok 6 /array/overflow-append-vals 720s ok 7 /array/overflow-set-size 720s # Start of new tests 720s ok 8 /array/new/zero-terminated 720s ok 9 /array/new/take 720s ok 10 /array/new/take-zero-terminated 720s # Start of take tests 720s ok 11 /array/new/take/empty 720s ok 12 /array/new/take/overflow # SKIP Overflow test requires UINT_WIDTH > SIZE_WIDTH. 720s # End of take tests 720s # End of new tests 720s # Start of set-size tests 720s ok 13 /array/set-size/non-zero-terminated-no-clear 720s ok 14 /array/set-size/non-zero-terminated-clear 720s ok 15 /array/set-size/zero-terminated-no-clear 720s ok 16 /array/set-size/zero-terminated-clear 720s # Start of sized tests 720s ok 17 /array/set-size/sized/non-zero-terminated-no-clear 720s ok 18 /array/set-size/sized/non-zero-terminated-clear 720s ok 19 /array/set-size/sized/zero-terminated-no-clear 720s ok 20 /array/set-size/sized/zero-terminated-clear 720s # End of sized tests 720s # End of set-size tests 720s # Start of append-val tests 720s ok 21 /array/append-val/non-zero-terminated-no-clear 720s ok 22 /array/append-val/non-zero-terminated-clear 720s ok 23 /array/append-val/zero-terminated-no-clear 720s ok 24 /array/append-val/zero-terminated-clear 720s # End of append-val tests 720s # Start of prepend-val tests 720s ok 25 /array/prepend-val/non-zero-terminated-no-clear 720s ok 26 /array/prepend-val/non-zero-terminated-clear 720s ok 27 /array/prepend-val/zero-terminated-no-clear 720s ok 28 /array/prepend-val/zero-terminated-clear 720s # End of prepend-val tests 720s # Start of prepend-vals tests 720s ok 29 /array/prepend-vals/non-zero-terminated-no-clear 720s ok 30 /array/prepend-vals/non-zero-terminated-clear 720s ok 31 /array/prepend-vals/zero-terminated-no-clear 720s ok 32 /array/prepend-vals/zero-terminated-clear 720s # End of prepend-vals tests 720s # Start of insert-vals tests 720s ok 33 /array/insert-vals/non-zero-terminated-no-clear 720s ok 34 /array/insert-vals/non-zero-terminated-clear 720s ok 35 /array/insert-vals/zero-terminated-no-clear 720s ok 36 /array/insert-vals/zero-terminated-clear 720s # End of insert-vals tests 720s # Start of remove-index tests 720s ok 37 /array/remove-index/non-zero-terminated-no-clear 720s ok 38 /array/remove-index/non-zero-terminated-clear 720s ok 39 /array/remove-index/zero-terminated-no-clear 720s ok 40 /array/remove-index/zero-terminated-clear 720s # End of remove-index tests 720s # Start of remove-index-fast tests 720s ok 41 /array/remove-index-fast/non-zero-terminated-no-clear 720s ok 42 /array/remove-index-fast/non-zero-terminated-clear 720s ok 43 /array/remove-index-fast/zero-terminated-no-clear 720s ok 44 /array/remove-index-fast/zero-terminated-clear 720s # End of remove-index-fast tests 720s # Start of remove-range tests 720s ok 45 /array/remove-range/non-zero-terminated-no-clear 720s ok 46 /array/remove-range/non-zero-terminated-clear 720s ok 47 /array/remove-range/zero-terminated-no-clear 720s ok 48 /array/remove-range/zero-terminated-clear 720s # End of remove-range tests 720s # Start of copy tests 720s ok 49 /array/copy/non-zero-terminated-no-clear 720s ok 50 /array/copy/non-zero-terminated-clear 720s ok 51 /array/copy/zero-terminated-no-clear 720s ok 52 /array/copy/zero-terminated-clear 720s # End of copy tests 720s # Start of sort tests 720s ok 53 /array/sort/non-zero-terminated-no-clear 720s ok 54 /array/sort/non-zero-terminated-clear 720s ok 55 /array/sort/zero-terminated-no-clear 720s ok 56 /array/sort/zero-terminated-clear 720s # End of sort tests 720s # Start of sort-with-data tests 720s ok 57 /array/sort-with-data/non-zero-terminated-no-clear 720s ok 58 /array/sort-with-data/non-zero-terminated-clear 720s ok 59 /array/sort-with-data/zero-terminated-no-clear 720s ok 60 /array/sort-with-data/zero-terminated-clear 720s # End of sort-with-data tests 720s # End of array tests 720s # Start of pointerarray tests 720s ok 61 /pointerarray/add 720s ok 62 /pointerarray/insert 720s ok 63 /pointerarray/new-take 720s ok 64 /pointerarray/new-take-null-terminated 720s ok 65 /pointerarray/new-from-array 720s ok 66 /pointerarray/new-from-null-terminated-array 720s ok 67 /pointerarray/free-func 720s ok 68 /pointerarray/array_extend_and_steal 720s ok 69 /pointerarray/sort 720s ok 70 /pointerarray/sort-with-data 720s ok 71 /pointerarray/sort-values 720s ok 72 /pointerarray/sort-values-with-data 720s ok 73 /pointerarray/remove-range 720s ok 74 /pointerarray/steal 720s # Start of free tests 720s # /pointerarray/free/null-terminated summary: Check that g_ptr_array_free() on an empty array returns a NULL-terminated empty array 720s ok 75 /pointerarray/free/null-terminated 720s # End of free tests 720s # Start of new-take tests 720s ok 76 /pointerarray/new-take/empty 720s ok 77 /pointerarray/new-take/overflow # SKIP Overflow test requires UINT_WIDTH > SIZE_WIDTH. 720s ok 78 /pointerarray/new-take/with-free-func 720s # End of new-take tests 720s # Start of new-take-null-terminated tests 720s ok 79 /pointerarray/new-take-null-terminated/empty 720s ok 80 /pointerarray/new-take-null-terminated/with-free-func 720s ok 81 /pointerarray/new-take-null-terminated/from-gstrv 720s # End of new-take-null-terminated tests 720s # Start of new-from-array tests 720s ok 82 /pointerarray/new-from-array/empty 720s ok 83 /pointerarray/new-from-array/overflow # SKIP Overflow test requires UINT_WIDTH > SIZE_WIDTH. 720s ok 84 /pointerarray/new-from-array/with-copy-and-free-func 720s # End of new-from-array tests 720s # Start of new-from-null-terminated-array tests 720s ok 85 /pointerarray/new-from-null-terminated-array/empty 720s ok 86 /pointerarray/new-from-null-terminated-array/with-copy-and-free-func 720s ok 87 /pointerarray/new-from-null-terminated-array/from-gstrv 720s # End of new-from-null-terminated-array tests 720s # Start of ref-count tests 720s ok 88 /pointerarray/ref-count/not-null-terminated 720s ok 89 /pointerarray/ref-count/null-terminated 720s # End of ref-count tests 720s # Start of array_copy tests 720s # /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 720s ok 90 /pointerarray/array_copy/not-null-terminated 720s # /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 720s ok 91 /pointerarray/array_copy/null-terminated 720s # End of array_copy tests 720s # Start of array_extend tests 720s ok 92 /pointerarray/array_extend/not-null-terminated 720s ok 93 /pointerarray/array_extend/null-terminated 720s # End of array_extend tests 720s # Start of sort tests 720s # /pointerarray/sort/example summary: Check that the doc-comment for g_ptr_array_sort() is correct 720s ok 94 /pointerarray/sort/example 720s # End of sort tests 720s # Start of sort-with-data tests 720s # /pointerarray/sort-with-data/example summary: Check that the doc-comment for g_ptr_array_sort_with_data() is correct 720s ok 95 /pointerarray/sort-with-data/example 720s # End of sort-with-data tests 720s # Start of sort-values tests 720s ok 96 /pointerarray/sort-values/example 720s # End of sort-values tests 720s # Start of sort-values-with-data tests 720s ok 97 /pointerarray/sort-values-with-data/example 720s # End of sort-values-with-data tests 720s # Start of find tests 720s ok 98 /pointerarray/find/empty 720s ok 99 /pointerarray/find/non-empty 720s # End of find tests 720s # Start of steal_index tests 720s ok 100 /pointerarray/steal_index/not-null-terminated 720s ok 101 /pointerarray/steal_index/null-terminated 720s # End of steal_index tests 720s # End of pointerarray tests 720s # Start of bytearray tests 720s ok 102 /bytearray/steal 720s ok - glib/array-test.test 720s # Running test: glib/gdbus-subscribe.test 720s ok 103 /bytearray/append 720s ok 104 /bytearray/prepend 720s ok 105 /bytearray/remove 720s ok 106 /bytearray/remove-fast 720s ok 107 /bytearray/remove-range 720s ok 108 /bytearray/ref-count 720s ok 109 /bytearray/sort 720s ok 110 /bytearray/sort-with-data 720s ok 111 /bytearray/new-take 720s ok 112 /bytearray/new-take-overflow # SKIP Overflow test requires G_MAXSIZE > G_MAXUINT. 720s ok 113 /bytearray/free-to-bytes 720s # End of bytearray tests 720s TAP version 14 720s # random seed: R02S04d1789c74420f5ec817a4ea24eb3559 720s 1..24 720s # Start of gdbus tests 720s # Start of subscribe tests 720s # Start of conn tests 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/simple/.dirs/runtime 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/conn/simple summary: A broadcast is only received after subscribing to it 720s # Step 0: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 1: adding subscription 720s # Sender: (any) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 2: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 2 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 0 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 2 was received 1 times by GDBusConnection, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 1 /gdbus/subscribe/conn/simple 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/broadcast_from_anyone/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/conn/broadcast_from_anyone summary: A subscription with NULL sender accepts broadcast and unicast 720s # Step 0: adding subscription 720s # Sender: (any) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: service 2 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 3: emitting signal 720s # Sender: service 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 4: emitting signal 720s # Sender: service 2 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 1 720s # Signal received from service 2 :1.2 720s # Signal received from service 2 :1.2 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 2 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 3 720s # Signal received from service 2 :1.2 720s # Signal received from service 2 :1.2 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 2 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 3 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 4 was received 1 times by GDBusConnection, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 2 /gdbus/subscribe/conn/broadcast_from_anyone 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/match_twice/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/conn/match_twice summary: A message matching more than one subscription is received once per subscription 720s # Step 0: adding subscription 720s # Sender: service :1.1 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 1: adding subscription 720s # Sender: (any) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: (any) 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 2: adding subscription 720s # Sender: (any) 720s # Path: (any) 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 3: adding subscription 720s # Sender: service :1.1 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 4: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 4 was received 4 times by GDBusConnection, expected 4 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 3 /gdbus/subscribe/conn/match_twice 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_unique_name/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/conn/limit_by_unique_name summary: A subscription via a unique name only accepts messages sent by that same unique name 720s # Step 0: adding subscription 720s # Sender: service :1.1 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 3: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 3 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 3 was received 1 times by GDBusConnection, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 4 /gdbus/subscribe/conn/limit_by_unique_name 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/nonexistent_unique_name/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/conn/nonexistent_unique_name summary: A subscription via a unique name that doesn't exist accepts no messages 720s # Step 0: adding subscription 720s # Sender: :0.this.had.better.not.exist 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 5 /gdbus/subscribe/conn/nonexistent_unique_name 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_by_well_known_name/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /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 720s # Step 0: claiming bus name 720s # Name: org.gtk.Test.AlreadyOwned 720s # Owner: service 720s # Step 1: adding subscription 720s # Sender: org.gtk.Test.AlreadyOwned 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 2: adding subscription 720s # Sender: org.gtk.Test.OwnedLater 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 3: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 4: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 5: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 6: claiming bus name 720s # Name: org.gtk.Test.OwnedLater 720s # Owner: service 720s # Step 7: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 5 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 7 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 7 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 3 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 4 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 5 was received 1 times by GDBusConnection, expected 1 720s # NameOwnerChanged from step 6 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 7 was received 2 times by GDBusConnection, expected 2 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 6 /gdbus/subscribe/conn/limit_by_well_known_name 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/limit_to_message_bus/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/conn/limit_to_message_bus summary: A subscription to the message bus only accepts messages from the message bus 720s # Step 0: adding subscription 720s # Sender: org.freedesktop.DBus 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # String argument 0: would I lie to you? 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # Waiting for signal to reach message bus 720s # Step 3: claiming bus name 720s # Name: org.gtk.Test.OwnedLater 720s # Owner: service 720s # Signal received from message bus org.freedesktop.DBus 720s # Signal received from (unused) org.freedesktop.DBus via connection 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 720s # NameOwnerChanged from step 3 was received 1 times by GDBusConnection, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 7 /gdbus/subscribe/conn/limit_to_message_bus 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/conn/unsubscribe_immediately/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/conn/unsubscribe_immediately summary: Unsubscribing before GetNameOwner can return doesn't result in a crash 720s # Step 0: claiming bus name 720s # Name: org.gtk.Test.AlreadyOwned 720s # Owner: service 720s # Step 1: adding subscription 720s # Sender: org.gtk.Test.AlreadyOwned 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Immediately unsubscribing 720s # Waiting for AddMatch to be processed 720s # Step 2: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 8 /gdbus/subscribe/conn/unsubscribe_immediately 720s # End of conn tests 720s # Start of proxy tests 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/simple/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/proxy/simple summary: A broadcast is only received after subscribing to it 720s # Step 0: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 1: adding subscription 720s # Sender: (any) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Cannot subscribe via proxy: no bus name 720s # Waiting for AddMatch to be processed 720s # Step 2: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 0 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 9 /gdbus/subscribe/proxy/simple 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/broadcast_from_anyone/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/proxy/broadcast_from_anyone summary: A subscription with NULL sender accepts broadcast and unicast 720s # Step 0: adding subscription 720s # Sender: (any) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Cannot subscribe via proxy: no bus name 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: service 2 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 3: emitting signal 720s # Sender: service 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 4: emitting signal 720s # Sender: service 2 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 3 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 4 was received 0 times by GDBusProxy, expected 0 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 10 /gdbus/subscribe/proxy/broadcast_from_anyone 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/match_twice/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/proxy/match_twice summary: A message matching more than one subscription is received once per subscription 720s # Step 0: adding subscription 720s # Sender: service :1.1 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 1: adding subscription 720s # Sender: (any) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: (any) 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Cannot subscribe via proxy: no bus name 720s # Waiting for AddMatch to be processed 720s # Step 2: adding subscription 720s # Sender: (any) 720s # Path: (any) 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Cannot subscribe via proxy: no bus name 720s # Waiting for AddMatch to be processed 720s # Step 3: adding subscription 720s # Sender: service :1.1 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 4: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 4 was received 2 times by GDBusProxy, expected 2 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 11 /gdbus/subscribe/proxy/match_twice 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_unique_name/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/proxy/limit_by_unique_name summary: A subscription via a unique name only accepts messages sent by that same unique name 720s # Step 0: adding subscription 720s # Sender: service :1.1 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 3: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 3 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 3 was received 1 times by GDBusProxy, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 12 /gdbus/subscribe/proxy/limit_by_unique_name 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/nonexistent_unique_name/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/proxy/nonexistent_unique_name summary: A subscription via a unique name that doesn't exist accepts no messages 720s # Step 0: adding subscription 720s # Sender: :0.this.had.better.not.exist 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 13 /gdbus/subscribe/proxy/nonexistent_unique_name 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_by_well_known_name/.dirs/runtime 720s # Executing: glib/gdbus-subscribe.test 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /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 720s # Step 0: claiming bus name 720s # Name: org.gtk.Test.AlreadyOwned 720s # Owner: service 720s # Step 1: adding subscription 720s # Sender: org.gtk.Test.AlreadyOwned 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 2: adding subscription 720s # Sender: org.gtk.Test.OwnedLater 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 3: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 4: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 5: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 6: claiming bus name 720s # Name: org.gtk.Test.OwnedLater 720s # Owner: service 720s # Step 7: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 5 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 7 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 7 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 3 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 4 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 5 was received 1 times by GDBusProxy, expected 1 720s # NameOwnerChanged from step 6 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 7 was received 2 times by GDBusProxy, expected 2 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 14 /gdbus/subscribe/proxy/limit_by_well_known_name 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/limit_to_message_bus/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/proxy/limit_to_message_bus summary: A subscription to the message bus only accepts messages from the message bus 720s # Step 0: adding subscription 720s # Sender: org.freedesktop.DBus 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # String argument 0: would I lie to you? 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # Waiting for signal to reach message bus 720s # Step 3: claiming bus name 720s # Name: org.gtk.Test.OwnedLater 720s # Owner: service 720s # Signal received from message bus org.freedesktop.DBus 720s # Signal received from (unused) org.freedesktop.DBus via proxy 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # NameOwnerChanged from step 3 was received 1 times by GDBusProxy, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 15 /gdbus/subscribe/proxy/limit_to_message_bus 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/proxy/unsubscribe_immediately/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/proxy/unsubscribe_immediately summary: Unsubscribing before GetNameOwner can return doesn't result in a crash 720s # Step 0: claiming bus name 720s # Name: org.gtk.Test.AlreadyOwned 720s # Owner: service 720s # Step 1: adding subscription 720s # Sender: org.gtk.Test.AlreadyOwned 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 2: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 2 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 1 times by GDBusProxy, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 16 /gdbus/subscribe/proxy/unsubscribe_immediately 720s # End of proxy tests 720s # Start of parallel tests 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/simple/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/parallel/simple summary: A broadcast is only received after subscribing to it 720s # Step 0: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 1: adding subscription 720s # Sender: (any) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Cannot subscribe via proxy: no bus name 720s # Waiting for AddMatch to be processed 720s # Step 2: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 2 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 0 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 0 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 17 /gdbus/subscribe/parallel/simple 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/broadcast_from_anyone/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/parallel/broadcast_from_anyone summary: A subscription with NULL sender accepts broadcast and unicast 720s # Step 0: adding subscription 720s # Sender: (any) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Cannot subscribe via proxy: no bus name 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: service 2 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 3: emitting signal 720s # Sender: service 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 4: emitting signal 720s # Sender: service 2 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 1 720s # Signal received from service 2 :1.2 720s # Signal received from service 2 :1.2 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 2 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 3 720s # Signal received from service 2 :1.2 720s # Signal received from service 2 :1.2 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 3 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 3 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 4 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 4 was received 0 times by GDBusProxy, expected 0 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 18 /gdbus/subscribe/parallel/broadcast_from_anyone 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/match_twice/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/parallel/match_twice summary: A message matching more than one subscription is received once per subscription 720s # Step 0: adding subscription 720s # Sender: service :1.1 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 1: adding subscription 720s # Sender: (any) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: (any) 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Cannot subscribe via proxy: no bus name 720s # Waiting for AddMatch to be processed 720s # Step 2: adding subscription 720s # Sender: (any) 720s # Path: (any) 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Cannot subscribe via proxy: no bus name 720s # Waiting for AddMatch to be processed 720s # Step 3: adding subscription 720s # Sender: service :1.1 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 4: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 4 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 4 was received 4 times by GDBusConnection, expected 4 720s # Signal from step 4 was received 2 times by GDBusProxy, expected 2 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 19 /gdbus/subscribe/parallel/match_twice 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_unique_name/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/parallel/limit_by_unique_name summary: A subscription via a unique name only accepts messages sent by that same unique name 720s # Step 0: adding subscription 720s # Sender: service :1.1 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 3: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 3 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 3 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 3 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 3 was received 1 times by GDBusProxy, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 20 /gdbus/subscribe/parallel/limit_by_unique_name 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/nonexistent_unique_name/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/parallel/nonexistent_unique_name summary: A subscription via a unique name that doesn't exist accepts no messages 720s # Step 0: adding subscription 720s # Sender: :0.this.had.better.not.exist 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 21 /gdbus/subscribe/parallel/nonexistent_unique_name 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_by_well_known_name/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /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 720s # Step 0: claiming bus name 720s # Name: org.gtk.Test.AlreadyOwned 720s # Owner: service 720s # Step 1: adding subscription 720s # Sender: org.gtk.Test.AlreadyOwned 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 2: adding subscription 720s # Sender: org.gtk.Test.OwnedLater 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 3: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 4: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 5: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Step 6: claiming bus name 720s # Name: org.gtk.Test.OwnedLater 720s # Owner: service 720s # Step 7: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 5 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 5 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 7 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 7 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via connection 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 7 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 7 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0 720s # NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 3 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 3 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 4 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 4 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 5 was received 1 times by GDBusConnection, expected 1 720s # Signal from step 5 was received 1 times by GDBusProxy, expected 1 720s # NameOwnerChanged from step 6 was received 0 times by GDBusConnection, expected 0 720s # NameOwnerChanged from step 6 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 7 was received 2 times by GDBusConnection, expected 2 720s # Signal from step 7 was received 2 times by GDBusProxy, expected 2 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 22 /gdbus/subscribe/parallel/limit_by_well_known_name 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/limit_to_message_bus/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/parallel/limit_to_message_bus summary: A subscription to the message bus only accepts messages from the message bus 720s # Step 0: adding subscription 720s # Sender: org.freedesktop.DBus 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 1: emitting signal 720s # Sender: attacker 720s # Destination: (broadcast) 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # String argument 0: would I lie to you? 720s # Waiting for signal to reach message bus 720s # Step 2: emitting signal 720s # Sender: attacker 720s # Destination: subscriber :1.0 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # Waiting for signal to reach message bus 720s # Step 3: claiming bus name 720s # Name: org.gtk.Test.OwnedLater 720s # Owner: service 720s # Signal received from message bus org.freedesktop.DBus 720s # Signal received from (unused) org.freedesktop.DBus via connection 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # Signal received from message bus org.freedesktop.DBus 720s # Signal received from (unused) org.freedesktop.DBus via proxy 720s # Path: /org/freedesktop/DBus 720s # Interface: org.freedesktop.DBus 720s # Member: NameOwnerChanged 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # Signal from step 1 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 1 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 2 was received 0 times by GDBusProxy, expected 0 720s # NameOwnerChanged from step 3 was received 1 times by GDBusConnection, expected 1 720s # NameOwnerChanged from step 3 was received 1 times by GDBusProxy, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 23 /gdbus/subscribe/parallel/limit_to_message_bus 720s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/home 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/cache 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-config1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-config2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/config 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-data1:/tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/system-data2 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/data 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/state 720s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-subscribe_YBUZ52/gdbus/subscribe/parallel/unsubscribe_immediately/.dirs/runtime 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 720s # subscriber is :1.0 720s # service is :1.1 720s # service 2 is :1.2 720s # attacker is :1.3 720s # Waiting for AddMatch to be processed 720s # /gdbus/subscribe/parallel/unsubscribe_immediately summary: Unsubscribing before GetNameOwner can return doesn't result in a crash 720s # Step 0: claiming bus name 720s # Name: org.gtk.Test.AlreadyOwned 720s # Owner: service 720s # Step 1: adding subscription 720s # Sender: org.gtk.Test.AlreadyOwned 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: (any) 720s # String argument 0: (any) 720s # Flags: 0 720s # Subscribing via connection 720s # Immediately unsubscribing 720s # Subscribing via proxy 720s # Waiting for AddMatch to be processed 720s # Step 2: emitting signal 720s # Sender: service 720s # Destination: (broadcast) 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Waiting for signal to reach message bus 720s # Signal received from service :1.1 720s # Signal received from service :1.1 via proxy 720s # Path: /org/gtk/GDBus/ExampleInterface 720s # Interface: org.gtk.GDBus.ExampleInterface 720s # Member: Foo 720s # Argument 0: (not a string) 720s # Sent in step: 2 720s # Received Finished signal from subscriber :1.0 720s # Received Finished signal from service :1.1 720s # Received Finished signal from service 2 :1.2 720s # Received Finished signal from attacker :1.3 720s # NameOwnerChanged from step 0 was received 0 times by GDBusConnection, expected 0 720s # NameOwnerChanged from step 0 was received 0 times by GDBusProxy, expected 0 720s # Signal from step 2 was received 0 times by GDBusConnection, expected 0 720s # Signal from step 2 was received 1 times by GDBusProxy, expected 1 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 720s ok 24 /gdbus/subscribe/parallel/unsubscribe_immediately 720s # End of parallel tests 720s # End of subscribe tests 720s # End of gdbus tests 720s ok - glib/gdbus-subscribe.test 720s # Running test: glib/macros-c-99.test 720s TAP version 14 720s # random seed: R02S219c7869684c69ce99929116e76c07e6 720s 1..4 720s # Start of C tests 720s ok 1 /C/standard-99 720s # End of C tests 720s # Start of alignof tests 720s ok 2 /alignof/fallback 720s # End of alignof tests 720s # Start of assert tests 720s ok 3 /assert/static 720s # End of assert tests 720s # Start of struct tests 720s ok 4 /struct/sizeof_member 720s # End of struct tests 720s ok - glib/macros-c-99.test 720s # Running test: glib/signals-refcount3.test 720s TAP version 14 720s # random seed: R02S66404ed3acd3df59463b5d7bc7f0fc36 720s 1..1 720s # Start of gobject tests 720s # Start of refcount tests 720s # init 0xb2c0b8896dd0 720s # 720s # init 0xb2c0b888d610 720s # 725s # Executing: glib/signals-refcount3.test 725s # dispose 0xb2c0b8896dd0! 725s # 725s # dispose 0xb2c0b888d610! 725s # 725s ok 1 /gobject/refcount/signals 725s # slow test /gobject/refcount/signals executed in 5.00 secs 725s # End of refcount tests 725s # End of gobject tests 725s ok - glib/signals-refcount3.test 725s # Running test: glib/credentials.test 725s TAP version 14 725s # random seed: R02Saeafc85ad5c8991c0cab2916f15853e5 725s 1..1 725s # Start of credentials tests 725s # GCredentials:linux-ucred:pid=8759,uid=1000,gid=1000 725s # GCredentials:linux-ucred:pid=8759,uid=0,gid=1000 725s ok 1 /credentials/basic 725s # End of credentials tests 725s ok - glib/credentials.test 725s # Running test: glib/cxx-03.test 725s TAP version 14 725s # random seed: R02S5dca765048a2180cac66db33a411ee33 725s 1..2 725s # Start of gtask tests 725s # 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. 725s ok 1 /gtask/name 725s # Start of name tests 725s # 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. 725s ok 2 /gtask/name/macro-wrapper 725s # End of name tests 725s # End of gtask tests 725s ok - glib/cxx-03.test 725s # Running test: glib/task.test 725s TAP version 14 725s # random seed: R02Sd8b83d3d42093adb55d1f6cedd5d9bb1 725s 1..36 725s # Start of gtask tests 725s ok 1 /gtask/basic 725s ok 2 /gtask/error 725s ok 3 /gtask/error-literal 725s ok 4 /gtask/error-literal-from-variable 725s ok 5 /gtask/return-from-same-iteration 725s ok 6 /gtask/return-from-toplevel 725s ok 7 /gtask/return-from-anon-thread 725s ok 8 /gtask/return-from-wrong-thread 725s ok 9 /gtask/no-callback 725s ok 10 /gtask/report-error 725s ok 11 /gtask/priority 725s ok 12 /gtask/name 725s ok 13 /gtask/static-name 725s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1608 725s ok 14 /gtask/asynchronous-cancellation 725s ok 15 /gtask/check-cancellable 725s ok 16 /gtask/return-if-cancelled 725s ok 17 /gtask/run-in-thread 725s ok 18 /gtask/run-in-thread-sync 725s ok 19 /gtask/run-in-thread-priority 725s ok 20 /gtask/run-in-thread-nested 726s ok 21 /gtask/run-in-thread-overflow 726s # slow test /gtask/run-in-thread-overflow executed in 0.51 secs 726s # GLib-GIO-DEBUG: GTask 0xb9dfc76b2a50 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 726s # GLib-GIO-DEBUG: GTask 0xb9dfc7647f10 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 726s ok 22 /gtask/return-on-cancel 726s # GLib-GIO-DEBUG: GTask 0xb9dfc76482d0 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 726s # GLib-GIO-DEBUG: GTask 0xb9dfc7648110 (source object: (nil), source tag: (nil)) finalized without ever returning (using g_task_return_*()). This potentially indicates a bug in the program. 726s ok 23 /gtask/return-on-cancel-sync 726s ok 24 /gtask/return-on-cancel-atomic 726s ok 25 /gtask/return-pointer 726s ok 26 /gtask/return-value 726s ok 27 /gtask/return-prefixed-error 726s ok 28 /gtask/object-keepalive 726s ok 29 /gtask/legacy-error 726s ok 30 /gtask/finalize-without-return 726s # Start of name tests 726s ok 31 /gtask/name/macro-wrapper 726s # End of name tests 726s # Start of return tests 726s ok 32 /gtask/return/error-first 726s ok 33 /gtask/return/value-first 726s # Start of in-idle tests 726s ok - glib/task.test 726s # Running test: glib/gdbus-proxy.test 726s ok 34 /gtask/return/in-idle/error-first 726s ok 35 /gtask/return/in-idle/value-first 726s # End of in-idle tests 726s # End of return tests 726s # Start of attach-source tests 726s # /gtask/attach-source/set-name summary: Test that attaching a source to a task will set the source?s name if unset 726s ok 36 /gtask/attach-source/set-name 726s # End of attach-source tests 726s # End of gtask tests 726s TAP version 14 726s # random seed: R02S0facd7176c44e52f7b89e5b1b0aea1bb 726s 1..5 726s # Start of gdbus tests 726s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/home 726s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/cache 726s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/system-config1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/system-config2 726s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/config 726s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/system-data1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/system-data2 726s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/data 726s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/state 726s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/.dirs/runtime 728s ok 1 /gdbus/proxy 728s # slow test /gdbus/proxy executed in 1.72 secs 728s # Start of proxy tests 728s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/home 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/cache 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/system-config1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/system-config2 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/config 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/system-data1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/system-data2 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/data 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/state 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-properties/.dirs/runtime 728s ok 2 /gdbus/proxy/no-properties 728s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/home 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/cache 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/system-config1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/system-config2 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/config 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/system-data1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/system-data2 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/data 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/state 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/wellknown-noauto/.dirs/runtime 728s ok 3 /gdbus/proxy/wellknown-noauto 728s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/home 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/cache 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/system-config1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/system-config2 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/config 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/system-data1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/system-data2 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/data 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/state 728s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/async/.dirs/runtime 729s ok 4 /gdbus/proxy/async 729s # slow test /gdbus/proxy/async executed in 1.72 secs 729s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/home 729s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/cache 729s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/system-config1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/system-config2 729s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/config 729s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/system-data1:/tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/system-data2 729s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/data 729s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/state 729s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy_HW6652/gdbus/proxy/no-match-rule/.dirs/runtime 729s # /gdbus/proxy/no-match-rule summary: Test that G_DBUS_PROXY_FLAGS_NO_MATCH_RULE works 729s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1109 730s # Executing: glib/gdbus-proxy.test 731s ok 5 /gdbus/proxy/no-match-rule 731s # slow test /gdbus/proxy/no-match-rule executed in 1.72 secs 731s # End of proxy tests 731s # End of gdbus tests 731s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 731s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 731s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 731s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 731s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 731s ok - glib/gdbus-proxy.test 731s # Running test: glib/portal-support-snap-classic.test 731s TAP version 14 731s # random seed: R02Sadbd8604f2dbe5df8c0a22990664857a 731s 1..3 731s # Start of portal-support tests 731s # Start of snap-classic tests 731s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/home 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/cache 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/system-config1:/tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/system-config2 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/config 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/system-data1:/tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/system-data2 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/data 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/state 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl/.dirs/runtime 731s ok - glib/portal-support-snap-classic.test 731s # Running test: glib/signals-refcount4.test 731s Unable to clean up temporary directory /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/no-snapctl: No such file or directory 731s ok 1 /portal-support/snap-classic/no-snapctl 731s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/home 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/cache 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/system-config1:/tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/system-config2 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/config 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/system-data1:/tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/system-data2 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/data 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/state 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/runtime 731s # Created snap.yaml in /tmp/test_portal-support-snap-classic_GDCA62/meta/snap.yaml 731s # Created snapctl in /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none/.dirs/runtime/snapctl 731s Unable to clean up temporary directory /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/none: No such file or directory 731s ok 2 /portal-support/snap-classic/none 731s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/home 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/cache 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/system-config1:/tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/system-config2 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/config 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/system-data1:/tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/system-data2 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/data 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/state 731s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/runtime 731s # Created snap.yaml in /tmp/test_portal-support-snap-classic_GDCA62/meta/snap.yaml 731s # Created snapctl in /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all/.dirs/runtime/snapctl 731s Unable to clean up temporary directory /tmp/test_portal-support-snap-classic_GDCA62/portal-support/snap-classic/all: No such file or directory 731s ok 3 /portal-support/snap-classic/all 731s # End of snap-classic tests 731s # End of portal-support tests 731s Unable to clean up temporary directory /tmp/test_portal-support-snap-classic_GDCA62: No such file or directory 731s TAP version 14 731s # random seed: R02Sa76007bfd196b97c1804eaf6f0feaa31 731s 1..1 731s # Start of gobject tests 731s # Start of refcount tests 731s # init 0xb8821e688dd0 731s # 731s # init 0xb8821e67f610 731s # 735s # Executing: glib/signals-refcount4.test 736s # dispose 0xb8821e688dd0! 736s # 736s # dispose 0xb8821e67f610! 736s # 736s ok 1 /gobject/refcount/signals 736s # slow test /gobject/refcount/signals executed in 5.00 secs 736s # End of refcount tests 736s # End of gobject tests 736s ok - glib/signals-refcount4.test 736s # Running test: glib/resources.test 736s TAP version 14 736s # random seed: R02S9dcc3e73274850fe245aefe0becb5711 736s 1..19 736s # Start of resource tests 736s ok 1 /resource/file 736s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 736s ok 2 /resource/file-path 736s ok 3 /resource/data 736s ok 4 /resource/data_unaligned 736s ok - glib/resources.test 736s # Running test: glib/basic-signals.test 736s ok - glib/basic-signals.test 736s # Running test: glib/guuid.test 736s ok 5 /resource/data-corrupt 736s # /resource/data-corrupt-compression summary: Test error handling for corrupt GResource files (specifically, corrupt zlib compression). 736s ok 6 /resource/data-corrupt-compression 736s ok 7 /resource/data-empty 736s ok 8 /resource/registered 736s ok 9 /resource/manual 736s ok 10 /resource/manual2 736s ok 11 /resource/automatic 736s ok 12 /resource/module 736s ok 13 /resource/binary-linked 736s ok 14 /resource/64k 736s GLib-GIO-Message: 18:48:59.298: Adding GResources overlay '/auto_loaded/test1.txt=/usr/libexec/installed-tests/glib/test1.overlay' 736s GLib-GIO-Message: 18:48:59.298: Opened file '/usr/libexec/installed-tests/glib/test1.overlay' as a resource overlay 736s GLib-GIO-Message: 18:48:59.298: Mapped file '/usr/libexec/installed-tests/glib/test1.overlay' as a resource overlay 736s ok 15 /resource/overlay 736s ok 16 /resource/digits 736s ok 17 /resource/has-children 736s # Start of uri tests 736s ok 18 /resource/uri/query-info 736s ok 19 /resource/uri/file 736s # End of uri tests 736s # End of resource tests 736s TAP version 14 736s # random seed: R02Sb0039606555e9907998921ea0958686f 736s 1..1 736s # Start of gobject tests 736s ok 1 /gobject/basic-signals 736s # End of gobject tests 736s TAP version 14 736s # random seed: R02S3d7b871aecfba5b895f69e77a965c0ff 736s 1..2 736s # Start of uuid tests 736s ok 1 /uuid/string 736s ok 2 /uuid/random 736s # End of uuid tests 736s TAP version 14 736s ok - glib/guuid.test 736s # Running test: glib/pattern.test 736s # random seed: R02S35ad0c185636fcef46ae5b2ae21b7927 736s 1..90 736s # Start of pattern tests 736s # Start of compile tests 736s ok 1 /pattern/compile/0 736s ok 2 /pattern/compile/1 736s ok 3 /pattern/compile/2 736s ok 4 /pattern/compile/3 736s ok 5 /pattern/compile/4 736s ok 6 /pattern/compile/5 736s ok 7 /pattern/compile/6 736s ok 8 /pattern/compile/7 736s ok 9 /pattern/compile/8 736s ok 10 /pattern/compile/9 736s ok 11 /pattern/compile/10 736s ok 12 /pattern/compile/11 736s ok 13 /pattern/compile/12 736s ok 14 /pattern/compile/13 736s # End of compile tests 736s # Start of copy tests 736s ok 15 /pattern/copy/0 736s ok 16 /pattern/copy/1 736s ok 17 /pattern/copy/2 736s ok 18 /pattern/copy/3 736s ok 19 /pattern/copy/4 736s ok 20 /pattern/copy/5 736s ok 21 /pattern/copy/6 736s ok 22 /pattern/copy/7 736s ok 23 /pattern/copy/8 736s ok 24 /pattern/copy/9 736s ok 25 /pattern/copy/10 736s ok 26 /pattern/copy/11 736s ok 27 /pattern/copy/12 736s ok 28 /pattern/copy/13 736s # End of copy tests 736s # Start of match tests 736s ok 29 /pattern/match/0 736s ok 30 /pattern/match/1 736s ok 31 /pattern/match/2 736s ok 32 /pattern/match/3 736s ok 33 /pattern/match/4 736s ok 34 /pattern/match/5 736s ok 35 /pattern/match/6 736s ok 36 /pattern/match/7 736s ok 37 /pattern/match/8 736s ok 38 /pattern/match/9 736s ok 39 /pattern/match/10 736s ok 40 /pattern/match/11 736s ok 41 /pattern/match/12 736s ok 42 /pattern/match/13 736s ok 43 /pattern/match/14 736s ok 44 /pattern/match/15 736s ok 45 /pattern/match/16 736s ok 46 /pattern/match/17 736s ok 47 /pattern/match/18 736s ok 48 /pattern/match/19 736s ok 49 /pattern/match/20 736s ok 50 /pattern/match/21 736s ok 51 /pattern/match/22 736s ok 52 /pattern/match/23 736s ok 53 /pattern/match/24 736s ok 54 /pattern/match/25 736s ok 55 /pattern/match/26 736s ok 56 /pattern/match/27 736s ok 57 /pattern/match/28 736s ok 58 /pattern/match/29 736s ok 59 /pattern/match/30 736s ok 60 /pattern/match/31 736s ok 61 /pattern/match/32 736s ok 62 /pattern/match/33 736s ok 63 /pattern/match/34 736s ok 64 /pattern/match/35 736s ok 65 /pattern/match/36 736s ok 66 /pattern/match/37 736s ok 67 /pattern/match/38 736s ok 68 /pattern/match/39 736s ok 69 /pattern/match/40 736s ok 70 /pattern/match/41 736s ok 71 /pattern/match/42 736s ok 72 /pattern/match/43 736s ok 73 /pattern/match/44 736s ok 74 /pattern/match/45 736s ok 75 /pattern/match/46 736s ok 76 /pattern/match/47 736s ok 77 /pattern/match/48 736s ok 78 /pattern/match/49 736s ok 79 /pattern/match/50 736s # End of match tests 736s # Start of equal tests 736s ok 80 /pattern/equal/0 736s ok 81 /pattern/equal/1 736s ok 82 /pattern/equal/2 736s ok 83 /pattern/equal/3 736s ok 84 /pattern/equal/4 736s ok 85 /pattern/equal/5 736s ok 86 /pattern/equal/6 736s ok 87 /pattern/equal/7 736s ok 88 /pattern/equal/8 736s ok 89 /pattern/equal/9 736s ok 90 /pattern/equal/10 736s # End of equal tests 736s # End of pattern tests 736s TAP version 14 736s # random seed: R02S799886d64c0a51fe5f4d5f6684a5ded5 736s 1..3 736s # Start of slice tests 736s ok 1 /slice/copy 736s ok 2 /slice/chain 736s ok - glib/pattern.test 736s # Running test: glib/slice.test 736s ok 3 /slice/allocate 736s # End of slice tests 736s ok - glib/slice.test 736s # Running test: glib/registered-type-info.test 736s TAP version 14 736s # random seed: R02S33142e6c11149b74a478b071d16e688c 736s 1..1 736s # Start of registered-type-info tests 736s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/home 736s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/cache 736s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/system-config1:/tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/system-config2 736s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/config 736s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/system-data1:/tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/system-data2 736s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/data 736s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/state 736s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_registered-type-info_UMIU52/registered-type-info/boxed/.dirs/runtime 736s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 736s # /registered-type-info/boxed summary: Test various boxed and non-boxed types for GIRegisteredTypeInfo 736s # Expecting CClosure to not be boxed 736s # Expecting TypeCValue to not be boxed 736s # Expecting InitiallyUnownedClass to not be boxed 736s # Expecting BookmarkFile to be boxed 736s # Expecting Closure to be boxed 736s # Expecting Object to not be boxed 736s ok 1 /registered-type-info/boxed 736s # End of registered-type-info tests 736s ok - glib/registered-type-info.test 736s # Running test: glib/tree.test 736s TAP version 14 736s # random seed: R02S5187f107c83f88fb487723184bf392ff 736s 1..7 736s # Start of tree tests 736s ok 1 /tree/search 736s ok 2 /tree/remove 736s ok 3 /tree/destroy 736s ok 4 /tree/traverse 736s ok 5 /tree/insert 736s ok 6 /tree/bounds 736s ok 7 /tree/remove-all 736s # End of tree tests 736s ok - glib/tree.test 736s # Running test: glib/gdbus-serialization.test 737s TAP version 14 737s # random seed: R02S815acf5a3147cadc22225d7a7a80b874 737s 1..18 737s # Start of gdbus tests 737s # Start of message-serialize tests 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/basic/.dirs/runtime 737s ok 1 /gdbus/message-serialize/basic 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/complex/.dirs/runtime 737s ok 2 /gdbus/message-serialize/complex 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/invalid/.dirs/runtime 737s ok 3 /gdbus/message-serialize/invalid 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/.dirs/runtime 737s ok 4 /gdbus/message-serialize/header-checks 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/double-array/.dirs/runtime 737s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=732754 737s ok 5 /gdbus/message-serialize/double-array 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/empty-structure/.dirs/runtime 737s # /gdbus/message-serialize/empty-structure summary: Test that empty structures are rejected when serializing. 737s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2557 737s ok 6 /gdbus/message-serialize/empty-structure 737s # Start of header-checks tests 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-serialize/header-checks/valid/.dirs/runtime 737s # /gdbus/message-serialize/header-checks/valid summary: Test that validation allows well-formed messages of all the different types 737s ok 7 /gdbus/message-serialize/header-checks/valid 737s # End of header-checks tests 737s # End of message-serialize tests 737s # Start of message-parse tests 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-arrays-of-arrays/.dirs/runtime 737s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=673612 737s ok 8 /gdbus/message-parse/empty-arrays-of-arrays 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/non-signature-header/.dirs/runtime 737s ok 9 /gdbus/message-parse/non-signature-header 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-signature-header/.dirs/runtime 737s ok 10 /gdbus/message-parse/empty-signature-header 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/multiple-signature-header/.dirs/runtime 737s ok 11 /gdbus/message-parse/multiple-signature-header 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/over-long-signature-header/.dirs/runtime 737s ok 12 /gdbus/message-parse/over-long-signature-header 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-header-nesting/.dirs/runtime 737s ok 13 /gdbus/message-parse/deep-header-nesting 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/deep-body-nesting/.dirs/runtime 737s ok 14 /gdbus/message-parse/deep-body-nesting 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/truncated/.dirs/runtime 737s # /gdbus/message-parse/truncated summary: Test that truncated messages are properly rejected. 737s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2528 737s ok 15 /gdbus/message-parse/truncated 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/empty-structure/.dirs/runtime 737s # /gdbus/message-parse/empty-structure summary: Test that empty structures are rejected when parsing. 737s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2557 737s ok 16 /gdbus/message-parse/empty-structure 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/system-data2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/missing-header/.dirs/runtime 737s # /gdbus/message-parse/missing-header summary: Test that missing (required) headers prompt an error. 737s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3061 737s ok 17 /gdbus/message-parse/missing-header 737s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/home 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/cache 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/system-config1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/system-config2 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/config 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/system-data1:/tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/system-data2 737s ok - glib/gdbus-serialization.test 737s # Running test: glib/contexts.test 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/data 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/state 737s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-serialization_M3MU52/gdbus/message-parse/invalid-header-type/.dirs/runtime 737s # /gdbus/message-parse/invalid-header-type summary: Test that the type of well-known headers is checked. 737s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3061 737s ok 18 /gdbus/message-parse/invalid-header-type 737s # End of message-parse tests 737s # End of gdbus tests 737s TAP version 14 737s # random seed: R02Se21484611ce8b0288e9e081e5159bdd4 737s 1..5 737s # Start of gio tests 737s # Start of contexts tests 737s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 737s ok 1 /gio/contexts/thread-independence 737s ok 2 /gio/contexts/context-independence 737s # Start of context-specific tests 737s ok 3 /gio/contexts/context-specific/identity 737s ok 4 /gio/contexts/context-specific/emit 737s ok 5 /gio/contexts/context-specific/emit-and-unref 737s # End of context-specific tests 737s # End of contexts tests 737s # End of gio tests 737s ok - glib/contexts.test 737s # Running test: glib/spawn-path-search.test 737s TAP version 14 737s # random seed: R02Sa1117410fd573583b39a6419a5acfd09 737s 1..7 737s # Start of spawn tests 737s # /spawn/do-not-search summary: Without G_SPAWN_SEARCH_PATH, spawn-test-helper means ./spawn-test-helper. 737s # 737s # this is spawn-test-helper from glib/tests 737s # 737s ok 1 /spawn/do-not-search 737s # /spawn/search-path summary: With G_SPAWN_SEARCH_PATH, spawn-test-helper means $PATH/spawn-test-helper. 737s # 737s # this is spawn-test-helper from path-test-subdir 737s # 737s ok 2 /spawn/search-path 737s # /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. 737s # 737s # this is spawn-test-helper from path-test-subdir 737s # 737s ok 3 /spawn/search-path-from-envp 737s # /spawn/search-path-ambiguous summary: With G_SPAWN_SEARCH_PATH and G_SPAWN_SEARCH_PATH_FROM_ENVP, the latter wins. 737s # 737s # this is spawn-test-helper from path-test-subdir 737s # 737s ok 4 /spawn/search-path-ambiguous 737s # 737s # this is spawn-test-helper from path-test-subdir 737s # 737s ok 5 /spawn/search-path-heap-allocation 737s # /spawn/search-path-fallback-in-environ summary: With G_SPAWN_SEARCH_PATH but no PATH, a fallback is used. 737s # 737s # this is spawn-test-helper from glib/tests 737s # 737s ok 6 /spawn/search-path-fallback-in-environ 737s # /spawn/search-path-fallback-in-envp summary: With G_SPAWN_SEARCH_PATH_FROM_ENVP but no PATH, a fallback is used. 737s # 737s # this is spawn-test-helper from glib/tests 737s # 737s ok 7 /spawn/search-path-fallback-in-envp 737s # End of spawn tests 737s ok - glib/spawn-path-search.test 737s # Running test: glib/spawn-multithreaded.test 737s TAP version 14 737s # random seed: R02S29bb554a8ba5b7af10439956bcf4e0a9 737s 1..4 737s # Start of gthread tests 738s # Child 8923 (ttl 1) exited, status 0 739s # Child 8924 (ttl 2) exited, status 0 739s ok 1 /gthread/spawn-childs 739s # slow test /gthread/spawn-childs executed in 2.00 secs 739s # Created pid: 8928 (ttl 1) 739s # Created pid: 8929 (ttl 2) 740s # Child 8928 (ttl 1) exited, status 0 740s # Executing: glib/spawn-multithreaded.test 741s # Child 8929 (ttl 2) exited, status 0 741s ok 2 /gthread/spawn-childs-threads 741s # slow test /gthread/spawn-childs-threads executed in 2.00 secs 741s ok 3 /gthread/spawn-sync 741s ok 4 /gthread/spawn-async 741s # End of gthread tests 741s ok - glib/spawn-multithreaded.test 741s # Running test: glib/strvbuilder.test 741s TAP version 14 741s # random seed: R02S33dba0baf5ee10949700e771e9680683 741s 1..7 741s # Start of strvbuilder tests 741s ok 1 /strvbuilder/empty 741s ok 2 /strvbuilder/add 741s ok - glib/strvbuilder.test 741s # Running test: glib/g-file-info.test 741s ok - glib/g-file-info.test 741s # Running test: glib/mimeapps.test 741s ok 3 /strvbuilder/addv 741s ok 4 /strvbuilder/add_many 741s ok 5 /strvbuilder/take 741s ok 6 /strvbuilder/ref 741s ok 7 /strvbuilder/unref_to_strv 741s # End of strvbuilder tests 741s TAP version 14 741s # random seed: R02Sc9e90bd59a275e4d47b43b75bdaaf59f 741s 1..6 741s # Start of g-file-info tests 741s ok 1 /g-file-info/test_g_file_info 741s # /g-file-info/xattrs summary: Test setting and getting escaped xattrs 741s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 741s ok 2 /g-file-info/xattrs 741s # /g-file-info/set-modified-date-time-precision summary: Test that g_file_info_set_modified_date_time() preserves microseconds 741s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3116 741s ok 3 /g-file-info/set-modified-date-time-precision 741s # Start of test_g_file_info tests 741s # /g-file-info/test_g_file_info/modification-time summary: Test that getting the modification time of a file works. 741s ok 4 /g-file-info/test_g_file_info/modification-time 741s # /g-file-info/test_g_file_info/access-time summary: Test that getting the access time of a file works. 741s ok 5 /g-file-info/test_g_file_info/access-time 741s # /g-file-info/test_g_file_info/creation-time summary: Test that getting the creation time of a file works. 741s ok 6 /g-file-info/test_g_file_info/creation-time 741s # End of test_g_file_info tests 741s # End of g-file-info tests 741s TAP version 14 741s # random seed: R02Scb0a3de02d36492a9af4721867753823 741s 1..7 741s # Start of appinfo tests 741s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/home 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/cache 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/system-config1:/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/system-config2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/config 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/system-data1:/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/system-data2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/state 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/runtime 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/system-data1/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/system-data1/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data/applications/myapp.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data/applications/myapp2.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data/applications/myapp3.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data/applications/myapp4.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data/applications/myapp5.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data/applications/nosuchapp.desktop' 741s # removing '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/data/applications/mimeinfo.cache' 741s ok 1 /appinfo/all 741s # Start of mime tests 741s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/home 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/cache 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/system-config1:/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/system-config2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/config 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/system-data1:/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/system-data2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/state 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/runtime 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/system-data1/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/system-data1/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data/applications/myapp.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data/applications/myapp2.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data/applications/myapp3.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data/applications/myapp4.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data/applications/myapp5.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data/applications/nosuchapp.desktop' 741s # removing '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/data/applications/mimeinfo.cache' 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/config 741s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_NW8R52/appinfo/all/.dirs/config to /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/config 741s ok 2 /appinfo/mime/api 741s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/home 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/cache 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/system-config1:/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/system-config2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/config 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/system-data1:/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/system-data2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/state 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/runtime 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/system-data1/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/system-data1/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data/applications/myapp.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data/applications/myapp2.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data/applications/myapp3.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data/applications/myapp4.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data/applications/myapp5.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data/applications/nosuchapp.desktop' 741s # removing '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/data/applications/mimeinfo.cache' 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/config 741s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_NW8R52/appinfo/mime/api/.dirs/config to /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/config 741s ok 3 /appinfo/mime/default 741s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/home 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/cache 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/system-config1:/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/system-config2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/config 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/system-data1:/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/system-data2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/state 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/runtime 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/system-data1/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/system-data1/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data/applications/myapp.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data/applications/myapp2.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data/applications/myapp3.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data/applications/myapp4.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data/applications/myapp5.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data/applications/nosuchapp.desktop' 741s # removing '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/data/applications/mimeinfo.cache' 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/config 741s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_NW8R52/appinfo/mime/default/.dirs/config to /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/config 741s ok 4 /appinfo/mime/file 741s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/home 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/cache 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/system-config1:/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/system-config2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/config 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/system-data1:/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/system-data2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/state 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/runtime 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/system-data1/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/system-data1/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data/applications/myapp.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data/applications/myapp2.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data/applications/myapp3.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data/applications/myapp4.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data/applications/myapp5.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data/applications/nosuchapp.desktop' 741s # removing '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/data/applications/mimeinfo.cache' 741s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_NW8R52/appinfo/mime/file/.dirs/config to /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/config 741s ok 5 /appinfo/mime/scheme-handler 741s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/home 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/cache 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/system-config1:/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/system-config2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/config 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/system-data1:/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/system-data2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/state 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/runtime 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/system-data1/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/system-data1/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data/applications/myapp.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data/applications/myapp2.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data/applications/myapp3.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data/applications/myapp4.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data/applications/myapp5.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data/applications/nosuchapp.desktop' 741s # removing '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/data/applications/mimeinfo.cache' 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/config 741s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_NW8R52/appinfo/mime/scheme-handler/.dirs/config to /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/config 741s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/config 741s ok 6 /appinfo/mime/default-last-used 741s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/home 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/cache 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/system-config1:/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/system-config2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/config 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/system-data1:/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/system-data2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/state 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/runtime 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/system-data1/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/system-data1/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data/applications' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp2.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp3.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp4.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data/applications/myapp5.desktop' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data/applications/nosuchapp.desktop' 741s # removing '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data/applications/mimeapps.list' 741s # creating '/tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/data/applications/mimeinfo.cache' 741s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_mimeapps_NW8R52/appinfo/mime/default-last-used/.dirs/config to /tmp/test_mimeapps_NW8R52/appinfo/mime/ignore-nonexisting/.dirs/config 741s ok 7 /appinfo/mime/ignore-nonexisting 741s # End of mime tests 741s # End of appinfo tests 741s ok - glib/mimeapps.test 741s # Running test: glib/refcount-macro.test 741s TAP version 14 741s # random seed: R02Sea5747c0b546cd6080e59793d4262249 741s 1..4 741s # Start of refcount tests 741s ok 1 /refcount/grefcount 741s ok 2 /refcount/gatomicrefcount 741s # Start of grefcount tests 741s ok 3 /refcount/grefcount/saturation 741s # End of grefcount tests 741s # Start of gatomicrefcount tests 741s ok - glib/refcount-macro.test 741s ok 4 /refcount/gatomicrefcount/saturation 741s # End of gatomicrefcount tests 741s # End of refcount tests 741s # Running test: glib/macros-c-17.test 741s TAP version 14 741s # random seed: R02Sf8b790581efb4c31199f2780ebed474e 741s 1..4 741s # Start of C tests 741s ok 1 /C/standard-17 741s # End of C tests 741s # Start of alignof tests 741s ok 2 /alignof/fallback 741s # End of alignof tests 741s # Start of assert tests 741s ok 3 /assert/static 741s # End of assert tests 741s # Start of struct tests 741s ok 4 /struct/sizeof_member 741s # End of struct tests 741s ok - glib/macros-c-17.test 741s # Running test: glib/hash.test 741s TAP version 14 741s # random seed: R02S45eb871153806bbcda9d1482e4083f87 741s 1..34 741s # Start of hash tests 741s ok 1 /hash/misc 741s ok 2 /hash/one 741s ok 3 /hash/honeyman 741s ok 4 /hash/direct 741s ok 5 /hash/direct2 741s ok 6 /hash/int 741s ok 7 /hash/int64 741s ok 8 /hash/double 741s ok 9 /hash/string 741s ok 10 /hash/set 741s ok 11 /hash/set-ref 741s ok 12 /hash/ref 741s ok 13 /hash/remove-all 741s ok 14 /hash/recursive-remove-all 741s ok 15 /hash/find 741s ok 16 /hash/foreach 741s ok 17 /hash/foreach-steal 741s ok 18 /hash/steal-extended 741s ok 19 /hash/steal-all-keys 741s ok 20 /hash/steal-all-values 741s ok 21 /hash/lookup-extended 741s ok 22 /hash/new-similar 741s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642944 741s ok 23 /hash/lookup-null-key 741s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=650459 741s ok 24 /hash/destroy-modify 741s ok 25 /hash/consistency 741s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=662544 741s ok 26 /hash/iter-replace 741s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=692815 741s ok 27 /hash/set-insert-corruption 741s ok 28 /hash/set-to-strv 741s ok 29 /hash/get-keys-as-ptr-array 741s ok 30 /hash/get-values-as-ptr-array 741s ok 31 /hash/primes 741s # Start of int64 tests 741s # /hash/int64/collisions summary: Check int64 Hash collisions caused by ignoring high word 741s ok 32 /hash/int64/collisions 741s # End of int64 tests 741s # Start of double tests 741s # /hash/double/collisions summary: Check double Hash collisions caused by int conversion and by numbers larger than 2^64-1 (G_MAXUINT64) 741s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2771 741s ok 33 /hash/double/collisions 741s # End of double tests 741s # Start of recursive-remove-all tests 741s # End of recursive-remove-all tests 741s # Start of steal-extended tests 741s ok 34 /hash/steal-extended/optional 741s # End of steal-extended tests 741s # End of hash tests 741s ok - glib/hash.test 741s # Running test: glib/macros-c-89.test 741s TAP version 14 741s # random seed: R02Sb95069a5abef59ec363dbcb2626e1879 741s 1..4 741s # Start of C tests 741s ok 1 /C/standard-89 741s # End of C tests 741s # Start of alignof tests 741s ok 2 /alignof/fallback 741s # End of alignof tests 741s # Start of assert tests 741s ok 3 /assert/static 741s # End of assert tests 741s # Start of struct tests 741s ok 4 /struct/sizeof_member 741s # End of struct tests 741s ok - glib/macros-c-89.test 741s # Running test: glib/notify-init.test 741s TAP version 14 741s # random seed: R02S51c6e3f01c9a81666406fce12ca15c32 741s 1..1 741s # Start of properties tests 741s # /properties/notify-in-init summary: Test that emitting notify with a handler already connected in test_object_init() works 741s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2665 741s ok 1 /properties/notify-in-init 741s # End of properties tests 741s ok - glib/notify-init.test 741s # Running test: glib/deftype.test 741s ok - glib/deftype.test 741s # Running test: glib/cxx-20.test 741s TAP version 14 741s # random seed: R02Sfdf54f41ada4b36a9cc59dc9bc039682 741s 1..2 741s # Start of gtask tests 741s # 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. 741s ok 1 /gtask/name 741s # Start of name tests 741s # 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. 741s ok 2 /gtask/name/macro-wrapper 741s # End of name tests 741s # End of gtask tests 741s ok - glib/cxx-20.test 741s # Running test: glib/convert.test 741s TAP version 14 741s # random seed: R02Sd3020cac2af84bb00a798b04951488e4 741s 1..14 741s # Start of conversion tests 741s ok 1 /conversion/no-conv 741s ok 2 /conversion/iconv-state 741s ok 3 /conversion/illegal-sequence 741s ok 4 /conversion/byte-order 741s ok 5 /conversion/unicode 741s ok 6 /conversion/filename-utf8 741s ok 7 /conversion/filename-display 741s ok 8 /conversion/convert-embedded-nul 741s # Start of locale-to-utf8 tests 741s ok 9 /conversion/locale-to-utf8/embedded-nul 741s # Start of embedded-nul tests 741s # Start of subprocess tests 741s # End of subprocess tests 741s # End of embedded-nul tests 741s # End of locale-to-utf8 tests 741s # Start of locale-from-utf8 tests 741s ok 10 /conversion/locale-from-utf8/embedded-nul 741s # Start of embedded-nul tests 741s # Start of subprocess tests 741s # End of subprocess tests 741s # End of embedded-nul tests 741s # End of locale-from-utf8 tests 741s # Start of filename-to-utf8 tests 741s ok 11 /conversion/filename-to-utf8/embedded-nul 741s # Start of embedded-nul tests 741s # Start of subprocess tests 741s # End of subprocess tests 741s # End of embedded-nul tests 741s # End of filename-to-utf8 tests 741s # Start of filename-from-utf8 tests 741s ok 12 /conversion/filename-from-utf8/embedded-nul 741s # Start of embedded-nul tests 741s # Start of subprocess tests 741s # End of subprocess tests 741s # End of embedded-nul tests 741s # End of filename-from-utf8 tests 741s # Start of filename-from-uri tests 741s ok 13 /conversion/filename-from-uri/query-is-ignored 741s ok 14 /conversion/filename-from-uri/fragment-is-ignored 741s # End of filename-from-uri tests 741s # End of conversion tests 741s ok - glib/convert.test 741s # Running test: glib/spawn-test.test 741s TAP version 14 741s # random seed: R02S653d2ed5de9e4a38410fb87d830657cc 741s 1..2 741s # Start of spawn tests 741s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_spawn-test_DUO152/spawn/basics/.dirs/home 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_spawn-test_DUO152/spawn/basics/.dirs/cache 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_spawn-test_DUO152/spawn/basics/.dirs/system-config1:/tmp/test_spawn-test_DUO152/spawn/basics/.dirs/system-config2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_spawn-test_DUO152/spawn/basics/.dirs/config 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_spawn-test_DUO152/spawn/basics/.dirs/system-data1:/tmp/test_spawn-test_DUO152/spawn/basics/.dirs/system-data2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_spawn-test_DUO152/spawn/basics/.dirs/data 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_spawn-test_DUO152/spawn/basics/.dirs/state 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_spawn-test_DUO152/spawn/basics/.dirs/runtime 741s ok 1 /spawn/basics 741s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/home 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/cache 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/system-config1:/tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/system-config2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/config 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/system-data1:/tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/system-data2 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/data 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/state 741s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_spawn-test_DUO152/spawn/stdio-overwrite/.dirs/runtime 741s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/16 741s # Fetching GSpawn result output and error output with stdin open, stdout open, stderr open 741s # Fetching GSpawn result output and error output with stdin open, stdout open, stderr already closed 741s # Fetching GSpawn result output and error output with stdin open, stdout already closed, stderr open 741s # Fetching GSpawn result output and error output with stdin open, stdout already closed, stderr already closed 741s # Fetching GSpawn result output and error output with stdin already closed, stdout open, stderr open 741s # Fetching GSpawn result output and error output with stdin already closed, stdout open, stderr already closed 741s # Fetching GSpawn result output and error output with stdin already closed, stdout already closed, stderr open 741s # Fetching GSpawn result output and error output with stdin already closed, stdout already closed, stderr already closed 741s # Fetching GSpawn result output with stdin open, stdout open, stderr open 741s # Fetching GSpawn result output with stdin open, stdout open, stderr already closed 741s # Fetching GSpawn result output with stdin open, stdout already closed, stderr open 741s # Fetching GSpawn result output with stdin open, stdout already closed, stderr already closed 741s # Fetching GSpawn result output with stdin already closed, stdout open, stderr open 741s # Fetching GSpawn result output with stdin already closed, stdout open, stderr already closed 741s # Fetching GSpawn result output with stdin already closed, stdout already closed, stderr open 741s # Fetching GSpawn result output with stdin already closed, stdout already closed, stderr already closed 741s # Fetching GSpawn result error output with stdin open, stdout open, stderr open 741s # Fetching GSpawn result error output with stdin open, stdout open, stderr already closed 741s # Fetching GSpawn result error output with stdin open, stdout already closed, stderr open 741s # Fetching GSpawn result error output with stdin open, stdout already closed, stderr already closed 741s # Fetching GSpawn result error output with stdin already closed, stdout open, stderr open 741s # Fetching GSpawn result error output with stdin already closed, stdout open, stderr already closed 741s # Fetching GSpawn result error output with stdin already closed, stdout already closed, stderr open 741s # Fetching GSpawn result error output with stdin already closed, stdout already closed, stderr already closed 741s # Fetching GSpawn result with stdin open, stdout open, stderr open 741s # Fetching GSpawn result with stdin open, stdout open, stderr already closed 741s # Fetching GSpawn result with stdin open, stdout already closed, stderr open 741s # Fetching GSpawn result with stdin open, stdout already closed, stderr already closed 741s # Fetching GSpawn result with stdin already closed, stdout open, stderr open 741s # Fetching GSpawn result with stdin already closed, stdout open, stderr already closed 741s # Fetching GSpawn result with stdin already closed, stdout already closed, stderr open 741s # Fetching GSpawn result with stdin already closed, stdout already closed, stderr already closed 741s ok 2 /spawn/stdio-overwrite 741s # End of spawn tests 741s ok - glib/spawn-test.test 741s # Running test: glib/search-utils.test 741s TAP version 14 741s # random seed: R02S47d14a9ba2b65b4511e04c87395f77ac 741s # GLib-DEBUG: Current user locale: C.UTF-8 741s 1..6 741s # Start of search tests 741s # GLib-DEBUG: Started 741s # GLib-DEBUG: 'he' - 'Hello World' should match: OK 741s # GLib-DEBUG: 'wo' - 'Hello World' should match: OK 741s # GLib-DEBUG: 'lo' - 'Hello World' should NOT match: OK 741s # GLib-DEBUG: 'ld' - 'Hello World' should NOT match: OK 741s # GLib-DEBUG: 'wo' - 'Hello-World' should match: OK 741s # GLib-DEBUG: 'wo' - 'HelloWorld' should NOT match: OK 741s ok 1 /search/basic 741s # GLib-DEBUG: Started 741s # GLib-DEBUG: 'jor' - 'Jörgen' should match: OK 741s # GLib-DEBUG: 'gaetan' - 'Gaëtan' should match: OK 741s # GLib-DEBUG: 'ele' - 'élève' should match: OK 741s # GLib-DEBUG: 'AzaÃs' - 'Azais' should NOT match: OK 741s # GLib-DEBUG: 'Azais' - 'AzaÃs' should match: OK 741s ok 2 /search/composed 741s # GLib-DEBUG: Started 741s # GLib-DEBUG: 'Jör' - 'Jorgen' should NOT match: OK 741s # GLib-DEBUG: 'jor' - 'Jörgen' should match: OK 741s ok 3 /search/decomposed 741s # GLib-DEBUG: Started 741s # GLib-DEBUG: 'ist' - 'İstanbul' should match: OK 741s # GLib-DEBUG: 'diyarbakir' - 'Diyarbakır' should match: OK 741s ok 4 /search/turkish 741s # GLib-DEBUG: Started 741s # GLib-DEBUG: 'jor' - 'J?rgen' should match: OK 741s # GLib-DEBUG: 'Jo?r' - 'Jorgen' should NOT match: OK 741s # GLib-DEBUG: 'jor' - 'Jo?rgen' should match: OK 741s ok 5 /search/c_locale_unicode 741s # GLib-DEBUG: Started 741s # GLib-DEBUG: 'Xav Cla' - 'Xavier Claessens' should match: OK 741s # GLib-DEBUG: 'Cla Xav' - 'Xavier Claessens' should match: OK 741s # GLib-DEBUG: ' b ' - 'Foo Bar Baz' should match: OK 741s # GLib-DEBUG: 'bar bazz' - 'Foo Bar Baz' should NOT match: OK 741s ok 6 /search/multi_words 741s # End of search tests 741s ok - glib/search-utils.test 741s # Running test: glib/threadtests.test 741s TAP version 14 741s # random seed: R02S77748a14d305f75467ba2bceb9f60f85 741s 1..5 741s # Start of GObject tests 741s ok 1 /GObject/threaded-object-init 742s ok 2 /GObject/threaded-weak-ref 742s # slow test /GObject/threaded-weak-ref executed in 0.70 secs 742s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2394 742s # /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 742s ok 3 /GObject/threaded-toggle-notify 742s ok 4 /GObject/threaded-g-pointer-bit-unlock-and-set 742s # Start of threaded-weak-ref tests 742s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390 742s # /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. 742s ok 5 /GObject/threaded-weak-ref/on-finalization 742s # End of threaded-weak-ref tests 742s # End of GObject tests 742s ok - glib/threadtests.test 742s # Running test: glib/signals.test 742s TAP version 14 742s # random seed: R02S882745cfba972e7486329b7fd5d72de0 742s 1..31 742s # Start of gobject tests 742s # Start of signals tests 742s ok 1 /gobject/signals/all-types 742s ok 2 /gobject/signals/variant 742s ok 3 /gobject/signals/destroy-target-object 742s ok 4 /gobject/signals/generic-marshaller-1 742s ok 5 /gobject/signals/generic-marshaller-2 742s ok 6 /gobject/signals/generic-marshaller-enum-return-signed 742s ok 7 /gobject/signals/generic-marshaller-enum-return-unsigned 742s ok 8 /gobject/signals/generic-marshaller-int-return 742s ok 9 /gobject/signals/generic-marshaller-uint-return 742s ok 10 /gobject/signals/generic-marshaller-interface-return 742s ok 11 /gobject/signals/custom-marshaller 742s ok 12 /gobject/signals/connect 742s ok 13 /gobject/signals/emission-hook 742s ok - glib/signals.test 742s # Running test: glib/giomodule.test 742s ok - glib/giomodule.test 742s # Running test: glib/memory-output-stream.test 742s ok - glib/memory-output-stream.test 742s # Running test: glib/gdbus-addresses.test 742s ok 14 /gobject/signals/emitv 742s ok 15 /gobject/signals/accumulator 742s # Signal: accumulator-class-first 742s # Signal: accumulator-class-last 742s # Signal: accumulator-class-cleanup 742s # Signal: accumulator-class-first-last 742s # Signal: accumulator-class-first-last-cleanup 742s # Signal: accumulator-class-last-cleanup 742s ok 16 /gobject/signals/accumulator-class 742s ok 17 /gobject/signals/introspection 742s ok 18 /gobject/signals/block-handler 742s ok 19 /gobject/signals/stop-emission 742s ok 20 /gobject/signals/invocation-hint 742s ok 21 /gobject/signals/test-disconnection-wrong-object 742s ok 22 /gobject/signals/clear-signal-handler 742s # /gobject/signals/lookup summary: Test that g_signal_lookup() works with a variety of inputs. 742s ok 23 /gobject/signals/lookup 742s # /gobject/signals/parse-name summary: Test that g_signal_parse_name() works with a variety of inputs. 742s ok 24 /gobject/signals/parse-name 742s ok 25 /gobject/signals/is-valid-name 742s ok 26 /gobject/signals/weak-ref-disconnect 742s # Start of lookup tests 742s # /gobject/signals/lookup/invalid summary: Test that g_signal_lookup() emits a warning if looking up an invalid signal name. 742s ok 27 /gobject/signals/lookup/invalid 742s # End of lookup tests 742s # Start of parse-name tests 742s # /gobject/signals/parse-name/invalid summary: Test that g_signal_parse_name() ignores a variety of invalid inputs. 742s # Parser input: 742s # Parser input: 7zip 742s # Parser input: invalid:signal 742s # Parser input: simple-detailed:: 742s # Parser input: simple-detailed: 742s # Parser input: : 742s # Parser input: :: 742s # Parser input: :valid-detail 742s # Parser input: ::valid-detail 742s ok 28 /gobject/signals/parse-name/invalid 742s # End of parse-name tests 742s # Start of invalid-name tests 742s # /gobject/signals/invalid-name/colon summary: Check that g_signal_new() rejects invalid signal names. 742s ok 29 /gobject/signals/invalid-name/colon 742s # /gobject/signals/invalid-name/first-char summary: Check that g_signal_new() rejects invalid signal names. 742s ok 30 /gobject/signals/invalid-name/first-char 742s # /gobject/signals/invalid-name/empty summary: Check that g_signal_new() rejects invalid signal names. 742s ok 31 /gobject/signals/invalid-name/empty 742s # End of invalid-name tests 742s # End of signals tests 742s # End of gobject tests 742s TAP version 14 742s # random seed: R02Sa999f5d46c4e000af43f5db4491fff8e 742s 1..3 742s # Start of giomodule tests 742s ok 1 /giomodule/extension-point 742s ok 2 /giomodule/module-scan-all 742s ok 3 /giomodule/module-scan-all-with-scope 742s # End of giomodule tests 742s TAP version 14 742s # random seed: R02S04787e7678f0b0efe2ffd0cc26605357 742s 1..10 742s # Start of memory-output-stream tests 742s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=540423 742s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=720080 742s ok 1 /memory-output-stream/truncate 742s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=540459 742s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=540461 742s ok 2 /memory-output-stream/get-data-size 742s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=605733 742s ok 3 /memory-output-stream/properties 742s ok 4 /memory-output-stream/write-bytes 742s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2471 742s ok 5 /memory-output-stream/write-null 742s ok 6 /memory-output-stream/writev 742s ok 7 /memory-output-stream/writev_nonblocking 742s ok 8 /memory-output-stream/steal_as_bytes 742s # Start of seek tests 742s ok 9 /memory-output-stream/seek/fixed 742s ok 10 /memory-output-stream/seek/resizable 742s # End of seek tests 742s # End of memory-output-stream tests 742s TAP version 14 742s # random seed: R02S64ecdeb6203f91f48f683a289154288d 742s 1..9 742s # Start of gdbus tests 742s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/home 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/cache 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/system-config1:/tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/system-config2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/config 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/system-data1:/tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/system-data2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/data 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/state 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_7FP152/gdbus/empty-address/.dirs/runtime 742s ok 1 /gdbus/empty-address 742s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/home 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/cache 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/system-config1:/tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/system-config2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/config 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/system-data1:/tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/system-data2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/data 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/state 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_7FP152/gdbus/unsupported-address/.dirs/runtime 742s ok 2 /gdbus/unsupported-address 742s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/home 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/cache 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/system-config1:/tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/system-config2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/config 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/system-data1:/tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/system-data2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/data 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/state 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_7FP152/gdbus/address-parsing/.dirs/runtime 742s ok 3 /gdbus/address-parsing 742s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/home 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/cache 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/system-config1:/tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/system-config2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/config 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/system-data1:/tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/system-data2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/data 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/state 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_7FP152/gdbus/unix-address/.dirs/runtime 742s ok 4 /gdbus/unix-address 742s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/home 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/cache 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/system-config1:/tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/system-config2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/config 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/system-data1:/tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/system-data2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/data 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/state 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_7FP152/gdbus/nonce-tcp-address/.dirs/runtime 742s ok 5 /gdbus/nonce-tcp-address 742s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/home 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/cache 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/system-config1:/tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/system-config2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/config 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/system-data1:/tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/system-data2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/data 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/state 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_7FP152/gdbus/tcp-address/.dirs/runtime 742s ok 6 /gdbus/tcp-address 742s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/home 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/cache 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/system-config1:/tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/system-config2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/config 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/system-data1:/tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/system-data2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/data 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/state 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_7FP152/gdbus/autolaunch-address/.dirs/runtime 742s ok 7 /gdbus/autolaunch-address 742s ok - glib/gdbus-addresses.test 742s # Running test: glib/memory-monitor-portal.test 742s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/home 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/cache 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/system-config1:/tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/system-config2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/config 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/system-data1:/tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/system-data2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/data 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/state 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_7FP152/gdbus/mixed-address/.dirs/runtime 742s ok 8 /gdbus/mixed-address 742s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/home 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/cache 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/system-config1:/tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/system-config2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/config 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/system-data1:/tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/system-data2 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/data 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/state 742s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-addresses_7FP152/gdbus/escape-address/.dirs/runtime 742s ok 9 /gdbus/escape-address 742s # End of gdbus tests 742s TAP version 13 742s ok 1 __main__.TestLowMemoryMonitorPortal.test_low_memory_warning_portal_signal # SKIP xdg-desktop-portal not available 742s 1..1 742s ok - glib/memory-monitor-portal.test 742s # Running test: glib/srvtarget.test 742s TAP version 14 742s # random seed: R02S5732bd72b9dce78cc7284435d55eb520 742s 1..1 742s # Start of srvtarget tests 743s ok 1 /srvtarget/srv-target-ordering 743s # End of srvtarget tests 743s ok - glib/srvtarget.test 743s # Running test: glib/cxx-17.test 743s TAP version 14 743s # random seed: R02S59b915cd5920033adbbd2e6da480cab7 743s 1..2 743s # Start of gtask tests 743s # 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. 743s ok 1 /gtask/name 743s # Start of name tests 743s # 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. 743s ok 2 /gtask/name/macro-wrapper 743s # End of name tests 743s # End of gtask tests 743s ok - glib/cxx-17.test 743s # Running test: glib/cmph-bdz.test 743s TAP version 14 743s # random seed: R02S7b7a70d6eade7a7a467ba53ed834a318 743s 1..2 743s # Start of cmph-bdz tests 743s ok 1 /cmph-bdz/search 743s ok 2 /cmph-bdz/search-packed 743s # End of cmph-bdz tests 743s ok - glib/cmph-bdz.test 743s # Running test: glib/memory-monitor-dbus.test 743s TAP version 13 743s ok 1 __main__.TestLowMemoryMonitor.test_low_memory_warning_signal # SKIP https://bugs.debian.org/995178 743s 1..1 743s ok - glib/memory-monitor-dbus.test 743s # Running test: glib/option-argv0.test 743s ok - glib/option-argv0.test 743s TAP version 14 743s # random seed: R02S33b4231778831fe6d6c1dd82e1e4a056 743s 1..1 743s # Start of option tests 743s ok 1 /option/argv0 743s # End of option tests 743s # Running test: glib/autoptr.test 743s TAP version 14 743s # random seed: R02S8bcdc4f9101e0201c2b0c5b079e3a26a 743s 1..6 743s # Start of autoptr tests 743s ok 1 /autoptr/autoptr 743s ok 2 /autoptr/autoptr_steal 743s ok 3 /autoptr/autolist 743s ok 4 /autoptr/autoslist 743s ok 5 /autoptr/autoqueue 743s ok 6 /autoptr/autoclass 743s # End of autoptr tests 743s ok - glib/autoptr.test 743s # Running test: glib/markup-collect.test 743s TAP version 14 743s # random seed: R02S72f70e05c02a0a9b6dbd40c5c3328ff6 743s 1..21 743s # Start of markup tests 743s # Start of collect tests 743s ok 1 /markup/collect/0 743s ok 2 /markup/collect/1 743s ok 3 /markup/collect/2 743s ok 4 /markup/collect/3 743s ok 5 /markup/collect/4 743s ok 6 /markup/collect/5 743s ok 7 /markup/collect/6 743s ok 8 /markup/collect/7 743s ok 9 /markup/collect/8 743s ok 10 /markup/collect/9 743s ok 11 /markup/collect/10 743s ok 12 /markup/collect/11 743s ok 13 /markup/collect/12 743s ok 14 /markup/collect/13 743s ok 15 /markup/collect/14 743s ok 16 /markup/collect/15 743s ok 17 /markup/collect/16 743s ok 18 /markup/collect/17 743s ok 19 /markup/collect/18 743s ok 20 /markup/collect/19 743s ok 21 /markup/collect/cleanup 743s # End of collect tests 743s # End of markup tests 743s ok - glib/markup-collect.test 743s # Running test: glib/tls-certificate.test 743s TAP version 14 743s # random seed: R02S0f751c2bb2be6e455941d727f3867391 743s 1..19 743s # Start of tls-certificate tests 743s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestTlsBackend) for ?gio-tls-backend? 743s ok - glib/tls-certificate.test 743s # Running test: glib/gdbus-proxy-unique-name.test 743s ok 1 /tls-certificate/pem-parser 743s ok 2 /tls-certificate/pem-parser-handles-chain 743s ok 3 /tls-certificate/from_file 743s ok 4 /tls-certificate/from_files 743s ok 5 /tls-certificate/from_files_crlf 743s ok 6 /tls-certificate/from_files_pkcs8 743s ok 7 /tls-certificate/from_files_pkcs8enc 743s ok 8 /tls-certificate/list_from_file 743s ok 9 /tls-certificate/pkcs11-uri 743s ok 10 /tls-certificate/pkcs11-uri-unsupported 743s ok 11 /tls-certificate/from_pkcs12 743s ok 12 /tls-certificate/from_pkcs12_file 743s ok 13 /tls-certificate/not-valid-before 743s ok 14 /tls-certificate/not-valid-after 743s ok 15 /tls-certificate/subject-name 743s ok 16 /tls-certificate/issuer-name 743s ok 17 /tls-certificate/dns-names 743s ok 18 /tls-certificate/ip-addresses 743s ok 19 /tls-certificate/pem-parser-no-sentinel 743s # End of tls-certificate tests 743s TAP version 14 743s # random seed: R02Sbf7cc46cb86bb9e2b8090b7f03fa0a1b 743s 1..1 743s # Start of gdbus tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/system-config1:/tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/system-data1:/tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-proxy-unique-name_OR3552/gdbus/proxy-unique-name/.dirs/runtime 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s ok 1 /gdbus/proxy-unique-name 743s # End of gdbus tests 743s ok - glib/gdbus-proxy-unique-name.test 743s # Running test: glib/resolver-parsing.test 743s TAP version 14 743s # random seed: R02S595200a26a4d0f117dc5f02f5329fa28 743s 1..21 743s # Start of gresolver tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/invalid-header/.dirs/runtime 743s ok 1 /gresolver/invalid-header 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/record-ownership/.dirs/runtime 743s ok 2 /gresolver/record-ownership 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/unknown-record-type/.dirs/runtime 743s # GLib-GIO-DEBUG: Unrecognized DNS record type 20 743s ok 3 /gresolver/unknown-record-type 743s # Start of mx tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/mx/valid/.dirs/runtime 743s ok 4 /gresolver/mx/valid 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/.dirs/runtime 743s ok 5 /gresolver/mx/invalid 743s # Start of invalid tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short/.dirs/runtime 743s ok 6 /gresolver/mx/invalid/too-short 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/mx/invalid/too-short2/.dirs/runtime 743s ok 7 /gresolver/mx/invalid/too-short2 743s # End of invalid tests 743s # End of mx tests 743s # Start of ns tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/ns/valid/.dirs/runtime 743s ok 8 /gresolver/ns/valid 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/ns/invalid/.dirs/runtime 743s ok 9 /gresolver/ns/invalid 743s # End of ns tests 743s # Start of soa tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/soa/valid/.dirs/runtime 743s ok 10 /gresolver/soa/valid 743s # Start of invalid tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/mname/.dirs/runtime 743s ok 11 /gresolver/soa/invalid/mname 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/rname/.dirs/runtime 743s ok 12 /gresolver/soa/invalid/rname 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/soa/invalid/too-short/.dirs/runtime 743s ok 13 /gresolver/soa/invalid/too-short 743s # End of invalid tests 743s # End of soa tests 743s # Start of srv tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/srv/valid/.dirs/runtime 743s ok 14 /gresolver/srv/valid 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/.dirs/runtime 743s ok 15 /gresolver/srv/invalid 743s # Start of invalid tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short/.dirs/runtime 743s ok 16 /gresolver/srv/invalid/too-short 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/srv/invalid/too-short2/.dirs/runtime 743s ok 17 /gresolver/srv/invalid/too-short2 743s # End of invalid tests 743s # End of srv tests 743s # Start of txt tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/.dirs/runtime 743s ok 18 /gresolver/txt/valid 743s # Start of valid tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/txt/valid/multiple-strings/.dirs/runtime 743s ok 19 /gresolver/txt/valid/multiple-strings 743s # End of valid tests 743s # Start of invalid tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/empty/.dirs/runtime 743s ok 20 /gresolver/txt/invalid/empty 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/system-config1:/tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/system-data1:/tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_resolver-parsing_5MC752/gresolver/txt/invalid/overflow/.dirs/runtime 743s ok 21 /gresolver/txt/invalid/overflow 743s # End of invalid tests 743s # End of txt tests 743s # End of gresolver tests 743s TAP version 14 743s # random seed: R02S12e93f18a8a1e43f1c130cf2bb8bdf93 743s 1..10 743s # Start of gdbus tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/validate-names/.dirs/runtime 743s ok 1 /gdbus/validate-names 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/home 743s ok - glib/resolver-parsing.test 743s # Running test: glib/gdbus-names.test 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/bus-own-name/.dirs/runtime 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s ok 2 /gdbus/bus-own-name 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name/.dirs/runtime 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s ok 3 /gdbus/bus-watch-name 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start/.dirs/runtime 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s ok 4 /gdbus/bus-watch-name-auto-start 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-auto-start-service-exist/.dirs/runtime 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 743s dbus-daemon[14095]: [session uid=1000 pid=14095 pidfd=4] Activating service name='org.gtk.GDBus.FakeService' requested by ':1.0' (uid=1000 pid=14086 comm="/usr/libexec/installed-tests/glib/gdbus-names" label="unconfined") 743s # Acquired a message bus connection 743s dbus-daemon[14095]: [session uid=1000 pid=14095 pidfd=4] Successfully activated service 'org.gtk.GDBus.FakeService' 743s # Acquired the name org.gtk.GDBus.FakeService 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s ok 5 /gdbus/bus-watch-name-auto-start-service-exist 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures/.dirs/runtime 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s ok 6 /gdbus/bus-watch-name-closures 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-name-closures-auto-start/.dirs/runtime 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s ok 7 /gdbus/bus-watch-name-closures-auto-start 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/bus-watch-different-context/.dirs/runtime 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s ok 8 /gdbus/bus-watch-different-context 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/bus-unwatch-early/.dirs/runtime 743s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/604 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 743s ok 9 /gdbus/bus-unwatch-early 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/system-config1:/tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/system-data1:/tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-names_ZPS652/gdbus/escape-object-path/.dirs/runtime 743s ok 10 /gdbus/escape-object-path 743s # End of gdbus tests 743s ok - glib/gdbus-names.test 743s # Running test: glib/mount-operation.test 743s TAP version 14 743s # random seed: R02S68c424e78d9127cd892344ad5c43d342 743s 1..2 743s # Start of mount-operation tests 743s ok 1 /mount-operation/construction 743s ok 2 /mount-operation/properties 743s # End of mount-operation tests 743s ok - glib/mount-operation.test 743s # Running test: glib/macros-c-11.test 743s TAP version 14 743s # random seed: R02S3b0d92a54acf224f0298c8ae9b28c71f 743s 1..4 743s # Start of C tests 743s ok 1 /C/standard-11 743s # End of C tests 743s # Start of alignof tests 743s ok 2 /alignof/fallback 743s # End of alignof tests 743s # Start of assert tests 743s ok 3 /assert/static 743s # End of assert tests 743s # Start of struct tests 743s ok 4 /struct/sizeof_member 743s # End of struct tests 743s ok - glib/macros-c-11.test 743s # Running test: glib/dump.test 743s TAP version 14 743s # random seed: R02Sd0f3678845fc709ceff50650f30b694a 743s 1..4 743s # Start of dump tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dump_6ZQ252/dump/empty-file/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dump_6ZQ252/dump/empty-file/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dump_6ZQ252/dump/empty-file/.dirs/system-config1:/tmp/test_dump_6ZQ252/dump/empty-file/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dump_6ZQ252/dump/empty-file/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dump_6ZQ252/dump/empty-file/.dirs/system-data1:/tmp/test_dump_6ZQ252/dump/empty-file/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dump_6ZQ252/dump/empty-file/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dump_6ZQ252/dump/empty-file/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dump_6ZQ252/dump/empty-file/.dirs/runtime 743s ok 1 /dump/empty-file 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/system-config1:/tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/system-data1:/tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dump_6ZQ252/dump/missing-get-type/.dirs/runtime 743s Invalid GType function: 'does_not_exist_get_type' 743s ok 2 /dump/missing-get-type 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/system-config1:/tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/system-data1:/tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dump_6ZQ252/dump/missing-quark/.dirs/runtime 743s Invalid error quark function: 'does_not_exist_error' 743s ok 3 /dump/missing-quark 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dump_6ZQ252/dump/basic/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dump_6ZQ252/dump/basic/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dump_6ZQ252/dump/basic/.dirs/system-config1:/tmp/test_dump_6ZQ252/dump/basic/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dump_6ZQ252/dump/basic/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dump_6ZQ252/dump/basic/.dirs/system-data1:/tmp/test_dump_6ZQ252/dump/basic/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dump_6ZQ252/dump/basic/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dump_6ZQ252/dump/basic/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dump_6ZQ252/dump/basic/.dirs/runtime 743s ok 4 /dump/basic 743s # End of dump tests 743s ok - glib/dump.test 743s # Running test: glib/appmonitor.test 743s TAP version 14 743s # random seed: R02Sfc59f4e19febc255fd9d6f00ecaf01bd 743s 1..1 743s # Start of monitor tests 743s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_appmonitor_WGO352/monitor/app/.dirs/home 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_appmonitor_WGO352/monitor/app/.dirs/cache 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_appmonitor_WGO352/monitor/app/.dirs/system-config1:/tmp/test_appmonitor_WGO352/monitor/app/.dirs/system-config2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_appmonitor_WGO352/monitor/app/.dirs/config 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_appmonitor_WGO352/monitor/app/.dirs/system-data1:/tmp/test_appmonitor_WGO352/monitor/app/.dirs/system-data2 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_appmonitor_WGO352/monitor/app/.dirs/data 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_appmonitor_WGO352/monitor/app/.dirs/state 743s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_appmonitor_WGO352/monitor/app/.dirs/runtime 743s # Using data directory: /tmp/test_appmonitor_WGO352/monitor/app/.dirs/data 743s ok 1 /monitor/app 743s # End of monitor tests 743s ok - glib/appmonitor.test 743s # Running test: glib/readwrite.test 743s TAP version 14 743s # random seed: R02Se0a6df935d41ccce07f785da47ab86be 743s 1..3 743s # Start of readwrite tests 743s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 743s ok 1 /readwrite/test_g_file_open_readwrite 743s ok 2 /readwrite/test_g_file_create_readwrite 743s ok 3 /readwrite/test_g_file_replace_readwrite 743s # End of readwrite tests 743s ok - glib/readwrite.test 743s # Running test: glib/thread-deprecated.test 743s TAP version 14 743s # random seed: R02S2d7b15b5c1db519202ffa7adf19270c6 743s 1..6 743s # Start of thread tests 743s ok 1 /thread/mutex 743s ok 2 /thread/static-rec-mutex 745s # Executing: glib/thread-deprecated.test 748s ok 3 /thread/static-private 748s # slow test /thread/static-private executed in 4.40 secs 750s # Executing: glib/thread-deprecated.test 753s ok 4 /thread/static-rw-lock 753s # slow test /thread/static-rw-lock executed in 5.00 secs 753s ok 5 /thread/once 755s # Executing: glib/thread-deprecated.test 760s # Executing: glib/thread-deprecated.test 763s ok - glib/thread-deprecated.test 763s ok 6 /thread/rerun-all 763s # slow test /thread/rerun-all executed in 9.82 secs 763s # End of thread tests 763s # Running test: glib/gdbus-exit-on-close.test 763s TAP version 14 763s # random seed: R02S9f0e5fc295637ebfb1822948d1b7653f 763s 1..4 763s # Start of gdbus tests 763s # Start of exit-on-close tests 763s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/home 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/cache 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/system-config1:/tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/system-config2 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/config 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/system-data1:/tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/system-data2 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/data 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/state 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/default/.dirs/runtime 763s ok 1 /gdbus/exit-on-close/default 763s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/home 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/cache 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/system-config1:/tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/system-config2 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/config 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/system-data1:/tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/system-data2 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/data 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/state 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/true/.dirs/runtime 763s ok 2 /gdbus/exit-on-close/true 763s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/home 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/cache 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/system-config1:/tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/system-config2 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/config 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/system-data1:/tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/system-data2 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/data 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/state 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/false/.dirs/runtime 763s ok 3 /gdbus/exit-on-close/false 763s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/home 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/cache 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/system-config1:/tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/system-config2 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/config 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/system-data1:/tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/system-data2 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/data 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/state 763s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-exit-on-close_QYXQ52/gdbus/exit-on-close/we-close/.dirs/runtime 763s ok 4 /gdbus/exit-on-close/we-close 763s # Start of default tests 763s # End of default tests 763s # Start of true tests 763s # End of true tests 763s # Start of false tests 763s # End of false tests 763s # Start of we-close tests 763s # End of we-close tests 763s # End of exit-on-close tests 763s # End of gdbus tests 763s ok - glib/gdbus-exit-on-close.test 763s # Running test: glib/type-flags.test 763s TAP version 14 763s # random seed: R02S4e1c75b2f0bb65915d37f7b01911d326 763s 1..4 763s # Start of type tests 763s # Start of flags tests 763s ok 1 /type/flags/interface 763s ok 2 /type/flags/final 763s # /type/flags/deprecated summary: Test that trying to instantiate a deprecated type results in a warning. 763s ok 3 /type/flags/deprecated 763s # Start of final tests 763s ok 4 /type/flags/final/instance-check 763s # End of final tests 763s # End of flags tests 763s # End of type tests 763s ok - glib/type-flags.test 763s # Running test: glib/private.test 763s TAP version 14 763s # random seed: R02S13ced705f95313fa780d06c874a50154 763s 1..8 763s # Start of thread tests 763s ok 1 /thread/private1 764s ok 2 /thread/private2 764s # slow test /thread/private2 executed in 1.09 secs 764s ok 3 /thread/private3 764s ok 4 /thread/staticprivate1 764s ok 5 /thread/staticprivate2 764s ok 6 /thread/staticprivate3 765s # Executing: glib/private.test 765s ok 7 /thread/staticprivate4 765s # slow test /thread/staticprivate4 executed in 1.09 secs 765s ok 8 /thread/staticprivate5 765s # End of thread tests 765s ok - glib/private.test 765s # Running test: glib/hmac.test 765s TAP version 14 765s # random seed: R02S9f6ca89fa87493788929becbc934e91c 765s 1..37 765s # Start of hmac tests 765s ok 1 /hmac/sha1-1 765s ok 2 /hmac/sha1-2 765s ok 3 /hmac/sha1-3 765s ok 4 /hmac/sha1-4 765s ok 5 /hmac/sha1-5 765s ok 6 /hmac/sha1-6 765s ok 7 /hmac/sha1-7 765s ok 8 /hmac/sha256-1 765s ok 9 /hmac/sha256-2 765s ok 10 /hmac/sha256-3 765s ok 11 /hmac/sha256-4 765s ok 12 /hmac/sha256-5 765s ok 13 /hmac/sha256-6 765s ok 14 /hmac/sha384-1 765s ok 15 /hmac/sha384-2 765s ok 16 /hmac/sha384-3 765s ok 17 /hmac/sha384-4 765s ok 18 /hmac/sha384-5 765s ok 19 /hmac/sha384-6 765s ok 20 /hmac/sha512-1 765s ok 21 /hmac/sha512-2 765s ok 22 /hmac/sha512-3 765s ok 23 /hmac/sha512-4 765s ok 24 /hmac/sha512-5 765s ok 25 /hmac/sha512-6 765s ok 26 /hmac/md5-1 765s ok 27 /hmac/md5-2 765s ok 28 /hmac/md5-3 765s ok 29 /hmac/md5-4 765s ok 30 /hmac/md5-5 765s ok 31 /hmac/md5-6 765s ok 32 /hmac/md5-7 765s ok 33 /hmac/ref-unref 765s ok 34 /hmac/copy 765s ok 35 /hmac/for-data 765s ok 36 /hmac/for-string 765s ok 37 /hmac/for-bytes 765s # End of hmac tests 765s ok - glib/hmac.test 765s # Running test: glib/module-test-plugin.test 765s TAP version 14 765s # random seed: R02Sb1cedbf487fa406e1da4beec272192e8 765s 1..3 765s # Start of module tests 765s ok - glib/module-test-plugin.test 765s # Running test: glib/sequence.test 765s ok 1 /module/basics 765s # /module/invalid-libtool-archive summary: Test that opening an invalid .la file fails 765s ok 2 /module/invalid-libtool-archive 765s # /module/local-binding summary: Test that binding a library's symbols locally does not add them globally 765s ok 3 /module/local-binding 765s # End of module tests 765s TAP version 14 765s # random seed: R02S44ea4ecfa97222c9d038996c3e5c6c44 765s 1..16 765s # Start of sequence tests 765s ok 1 /sequence/out-of-range-jump 765s ok 2 /sequence/iter-move 765s ok 3 /sequence/insert-sorted-non-pointer 765s ok 4 /sequence/stable-sort 765s ok 5 /sequence/is_empty 765s # Start of random tests 766s ok 6 /sequence/random/seed:825541564 766s # slow test /sequence/random/seed:825541564 executed in 0.54 secs 766s ok 7 /sequence/random/seed:801678400 766s # slow test /sequence/random/seed:801678400 executed in 0.51 secs 767s ok 8 /sequence/random/seed:1477639090 767s # slow test /sequence/random/seed:1477639090 executed in 0.54 secs 767s ok 9 /sequence/random/seed:3369132895 768s ok 10 /sequence/random/seed:1192944867 768s # slow test /sequence/random/seed:1192944867 executed in 0.52 secs 768s ok 11 /sequence/random/seed:770458294 768s # slow test /sequence/random/seed:770458294 executed in 0.54 secs 769s ok 12 /sequence/random/seed:1099575817 769s # slow test /sequence/random/seed:1099575817 executed in 0.52 secs 769s ok 13 /sequence/random/seed:590523467 769s # slow test /sequence/random/seed:590523467 executed in 0.54 secs 770s # Executing: glib/sequence.test 770s ok 14 /sequence/random/seed:3583571454 770s # slow test /sequence/random/seed:3583571454 executed in 0.54 secs 771s ok 15 /sequence/random/seed:579241222 771s # slow test /sequence/random/seed:579241222 executed in 0.54 secs 771s ok - glib/sequence.test 771s ok 16 /sequence/random/seed:1530308590 771s # slow test /sequence/random/seed:1530308590 executed in 0.53 secs 771s # End of random tests 771s # End of sequence tests 771s # Running test: glib/custom-dispatch.test 771s TAP version 14 771s # random seed: R02S6c4c3442d6e7f4385d068e69423b738e 771s 1..2 771s # Start of properties tests 771s # Start of custom-dispatch tests 771s # /properties/custom-dispatch/init summary: Test that custom dispatch_properties_changed is called on initialization 771s ok 1 /properties/custom-dispatch/init 771s # /properties/custom-dispatch/set summary: Test that custom dispatch_properties_changed is called regardless of connected notify handlers 771s ok 2 /properties/custom-dispatch/set 771s # End of custom-dispatch tests 771s # End of properties tests 771s ok - glib/custom-dispatch.test 771s # Running test: glib/file.test 771s TAP version 14 771s # random seed: R02S7f64f06a94ed6bbe1f88f80e3ae111d1 771s 1..55 771s # Start of file tests 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/basic/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/basic/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/basic/.dirs/system-config1:/tmp/test_file_XSZ152/file/basic/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/basic/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/basic/.dirs/system-data1:/tmp/test_file_XSZ152/file/basic/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/basic/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/basic/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/basic/.dirs/runtime 771s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’ 771s ok 1 /file/basic 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/build-filename/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/build-filename/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/build-filename/.dirs/system-config1:/tmp/test_file_XSZ152/file/build-filename/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/build-filename/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/build-filename/.dirs/system-data1:/tmp/test_file_XSZ152/file/build-filename/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/build-filename/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/build-filename/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/build-filename/.dirs/runtime 771s ok 2 /file/build-filename 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/build-filenamev/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/build-filenamev/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/build-filenamev/.dirs/system-config1:/tmp/test_file_XSZ152/file/build-filenamev/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/build-filenamev/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/build-filenamev/.dirs/system-data1:/tmp/test_file_XSZ152/file/build-filenamev/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/build-filenamev/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/build-filenamev/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/build-filenamev/.dirs/runtime 771s ok 3 /file/build-filenamev 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/parent/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/parent/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/parent/.dirs/system-config1:/tmp/test_file_XSZ152/file/parent/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/parent/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/parent/.dirs/system-data1:/tmp/test_file_XSZ152/file/parent/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/parent/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/parent/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/parent/.dirs/runtime 771s ok 4 /file/parent 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/child/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/child/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/child/.dirs/system-config1:/tmp/test_file_XSZ152/file/child/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/child/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/child/.dirs/system-data1:/tmp/test_file_XSZ152/file/child/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/child/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/child/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/child/.dirs/runtime 771s ok 5 /file/child 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/empty-path/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/empty-path/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/empty-path/.dirs/system-config1:/tmp/test_file_XSZ152/file/empty-path/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/empty-path/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/empty-path/.dirs/system-data1:/tmp/test_file_XSZ152/file/empty-path/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/empty-path/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/empty-path/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/empty-path/.dirs/runtime 771s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2328 771s # /file/empty-path summary: Check that creating a file with an empty path results in errors 771s ok 6 /file/empty-path 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/type/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/type/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/type/.dirs/system-config1:/tmp/test_file_XSZ152/file/type/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/type/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/type/.dirs/system-data1:/tmp/test_file_XSZ152/file/type/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/type/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/type/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/type/.dirs/runtime 771s ok 7 /file/type 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/parse-name/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/parse-name/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/parse-name/.dirs/system-config1:/tmp/test_file_XSZ152/file/parse-name/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/parse-name/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/parse-name/.dirs/system-data1:/tmp/test_file_XSZ152/file/parse-name/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/parse-name/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/parse-name/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/parse-name/.dirs/runtime 771s ok 8 /file/parse-name 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/replace-load/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/replace-load/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/replace-load/.dirs/system-config1:/tmp/test_file_XSZ152/file/replace-load/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/replace-load/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/replace-load/.dirs/system-data1:/tmp/test_file_XSZ152/file/replace-load/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/replace-load/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/replace-load/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/replace-load/.dirs/runtime 771s ok 9 /file/replace-load 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/replace-cancel/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/replace-cancel/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/replace-cancel/.dirs/system-config1:/tmp/test_file_XSZ152/file/replace-cancel/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/replace-cancel/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/replace-cancel/.dirs/system-data1:/tmp/test_file_XSZ152/file/replace-cancel/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/replace-cancel/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/replace-cancel/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/replace-cancel/.dirs/runtime 771s # Bug Reference: https://bugzilla.gnome.org/629301 771s ok 10 /file/replace-cancel 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/replace-symlink/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/replace-symlink/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/replace-symlink/.dirs/system-config1:/tmp/test_file_XSZ152/file/replace-symlink/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/replace-symlink/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/replace-symlink/.dirs/system-data1:/tmp/test_file_XSZ152/file/replace-symlink/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/replace-symlink/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/replace-symlink/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/replace-symlink/.dirs/runtime 771s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2325 771s # /file/replace-symlink summary: Test that G_FILE_CREATE_REPLACE_DESTINATION doesn’t follow symlinks 771s # Using temporary directory /tmp/test_file_XSZ152/g_file_replace_symlink_UD3252 771s ok 11 /file/replace-symlink 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/async-new-tmp/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/async-new-tmp/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/async-new-tmp/.dirs/system-config1:/tmp/test_file_XSZ152/file/async-new-tmp/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/async-new-tmp/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/async-new-tmp/.dirs/system-data1:/tmp/test_file_XSZ152/file/async-new-tmp/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/async-new-tmp/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/async-new-tmp/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/async-new-tmp/.dirs/runtime 771s ok 12 /file/async-new-tmp 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/system-config1:/tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/system-data1:/tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/async-new-tmp-dir/.dirs/runtime 771s ok 13 /file/async-new-tmp-dir 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/async-delete/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/async-delete/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/async-delete/.dirs/system-config1:/tmp/test_file_XSZ152/file/async-delete/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/async-delete/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/async-delete/.dirs/system-data1:/tmp/test_file_XSZ152/file/async-delete/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/async-delete/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/async-delete/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/async-delete/.dirs/runtime 771s ok 14 /file/async-delete 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/async-make-symlink/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/async-make-symlink/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/async-make-symlink/.dirs/system-config1:/tmp/test_file_XSZ152/file/async-make-symlink/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/async-make-symlink/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/async-make-symlink/.dirs/system-data1:/tmp/test_file_XSZ152/file/async-make-symlink/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/async-make-symlink/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/async-make-symlink/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/async-make-symlink/.dirs/runtime 771s ok 15 /file/async-make-symlink 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/system-config1:/tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/system-data1:/tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/copy-preserve-mode/.dirs/runtime 771s # Current umask: 2 771s # Vector 0 771s # Vector 1 771s # Vector 2 771s # Vector 3 771s # Vector 4 771s # Vector 5 771s # Vector 6 771s # Vector 7 771s # Vector 8 771s # Vector 9 771s # Vector 10 771s ok 16 /file/copy-preserve-mode 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/system-config1:/tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/system-data1:/tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/copy-async-with-closures/.dirs/runtime 771s ok 17 /file/copy-async-with-closures 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/measure/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/measure/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/measure/.dirs/system-config1:/tmp/test_file_XSZ152/file/measure/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/measure/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/measure/.dirs/system-data1:/tmp/test_file_XSZ152/file/measure/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/measure/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/measure/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/measure/.dirs/runtime 771s ok 18 /file/measure 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/measure-async/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/measure-async/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/measure-async/.dirs/system-config1:/tmp/test_file_XSZ152/file/measure-async/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/measure-async/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/measure-async/.dirs/system-data1:/tmp/test_file_XSZ152/file/measure-async/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/measure-async/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/measure-async/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/measure-async/.dirs/runtime 771s ok 19 /file/measure-async 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/load-bytes/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/load-bytes/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/load-bytes/.dirs/system-config1:/tmp/test_file_XSZ152/file/load-bytes/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/load-bytes/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/load-bytes/.dirs/system-data1:/tmp/test_file_XSZ152/file/load-bytes/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/load-bytes/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/load-bytes/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/load-bytes/.dirs/runtime 771s ok 20 /file/load-bytes 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/load-bytes-async/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/load-bytes-async/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/load-bytes-async/.dirs/system-config1:/tmp/test_file_XSZ152/file/load-bytes-async/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/load-bytes-async/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/load-bytes-async/.dirs/system-data1:/tmp/test_file_XSZ152/file/load-bytes-async/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/load-bytes-async/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/load-bytes-async/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/load-bytes-async/.dirs/runtime 771s ok 21 /file/load-bytes-async 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/system-config1:/tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/system-data1:/tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/load-bytes-4gb/.dirs/runtime 771s ok 22 /file/load-bytes-4gb # SKIP Skipping slow >4GB file test 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/system-config1:/tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/system-data1:/tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/load-contents-4gb/.dirs/runtime 771s ok 23 /file/load-contents-4gb # SKIP Skipping slow >4GB file test 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/system-config1:/tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/system-data1:/tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/load-contents-4gb-async/.dirs/runtime 771s ok 24 /file/load-contents-4gb-async # SKIP Skipping slow >4GB file test 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/.dirs/runtime 771s ok 25 /file/writev 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/system-config1:/tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/system-data1:/tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/build-attribute-list-for-copy/.dirs/runtime 771s # Attributes for copy: standard::size,time::modified,time::modified-nsec,time::modified-usec,unix::mode,xattr::* 771s # Attributes for copy: standard::size,time::modified,time::modified-nsec,time::modified-usec,xattr::* 771s # 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::* 771s # 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::* 771s # Attributes for copy: standard::size,time::access,time::access-nsec,time::access-usec,unix::gid,unix::mode,unix::uid,xattr::*,xattr-sys::* 771s # Attributes for copy: standard::size,xattr::* 771s # Attributes for copy: standard::size,unix::mode,xattr::* 771s ok 26 /file/build-attribute-list-for-copy 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/move_async/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/move_async/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/move_async/.dirs/system-config1:/tmp/test_file_XSZ152/file/move_async/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/move_async/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/move_async/.dirs/system-data1:/tmp/test_file_XSZ152/file/move_async/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/move_async/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/move_async/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/move_async/.dirs/runtime 771s ok 27 /file/move_async 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/system-config1:/tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/system-data1:/tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/move-async-with-closures/.dirs/runtime 771s ok 28 /file/move-async-with-closures 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/system-config1:/tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/system-data1:/tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/query-zero-length-content-type/.dirs/runtime 771s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=755795 771s # /file/query-zero-length-content-type summary: empty files should always be considered application/x-zerosize 771s ok 29 /file/query-zero-length-content-type 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/system-config1:/tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/system-data1:/tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/runtime 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/data/applications 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/config 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/config 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/config 771s ok 30 /file/query-default-handler-file 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/system-config1:/tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/system-data1:/tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/runtime 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/data/applications 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/config 771s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_file_XSZ152/file/query-default-handler-file/.dirs/config to /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/config 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/config 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/config 771s ok 31 /file/query-default-handler-file-async 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/system-config1:/tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/system-data1:/tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/runtime 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/data/applications 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/config 771s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_file_XSZ152/file/query-default-handler-file-async/.dirs/config to /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/config 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/config 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/config 771s ok 32 /file/query-default-handler-uri 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/system-config1:/tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/system-data1:/tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/runtime 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/data/applications 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/config 771s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_file_XSZ152/file/query-default-handler-uri/.dirs/config to /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/config 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/config 771s # GLib-GIO-DEBUG: ensure_dir: Ensuring /tmp/test_file_XSZ152/file/query-default-handler-uri-async/.dirs/config 771s ok 33 /file/query-default-handler-uri-async 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/system-config1:/tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/system-data1:/tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/enumerator-cancellation/.dirs/runtime 771s ok 34 /file/enumerator-cancellation 771s # Start of async-create-delete tests 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/system-config1:/tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/system-data1:/tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/async-create-delete/0/.dirs/runtime 771s ok 35 /file/async-create-delete/0 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/system-config1:/tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/system-data1:/tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/async-create-delete/1/.dirs/runtime 771s ok 36 /file/async-create-delete/1 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/system-config1:/tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/system-data1:/tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/async-create-delete/10/.dirs/runtime 771s ok 37 /file/async-create-delete/10 771s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/home 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/cache 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/system-config1:/tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/system-config2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/config 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/system-data1:/tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/system-data2 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/data 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/state 771s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/async-create-delete/25/.dirs/runtime 772s ok 38 /file/async-create-delete/25 772s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/home 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/cache 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/system-config1:/tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/system-config2 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/config 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/system-data1:/tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/system-data2 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/data 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/state 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/async-create-delete/4096/.dirs/runtime 772s ok 39 /file/async-create-delete/4096 772s # End of async-create-delete tests 772s # Start of replace-symlink tests 772s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/home 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/cache 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/system-config1:/tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/system-config2 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/config 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/system-data1:/tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/system-data2 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/data 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/state 772s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/replace-symlink/using-etag/.dirs/runtime 772s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2417 772s # /file/replace-symlink/using-etag summary: Test that ETag checks work when replacing a file through a symlink 772s # Using temporary directory /tmp/test_file_XSZ152/g_file_replace_symlink_using_etag_G4ZV52 774s ok 40 /file/replace-symlink/using-etag 774s # slow test /file/replace-symlink/using-etag executed in 2.01 secs 774s # End of replace-symlink tests 774s # Start of replace tests 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/replace/write-only/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/replace/write-only/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/replace/write-only/.dirs/system-config1:/tmp/test_file_XSZ152/file/replace/write-only/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/replace/write-only/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/replace/write-only/.dirs/system-data1:/tmp/test_file_XSZ152/file/replace/write-only/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/replace/write-only/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/replace/write-only/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/replace/write-only/.dirs/runtime 774s # /file/replace/write-only summary: Test various situations for g_file_replace() 774s # Current umask: 2 774s # Test 0, using temporary directory /tmp/test_file_XSZ152/g_file_replace_4EIV52 774s # Test 1, using temporary directory /tmp/test_file_XSZ152/g_file_replace_37HV52 774s # Test 2, using temporary directory /tmp/test_file_XSZ152/g_file_replace_FJRV52 774s # Test 3, using temporary directory /tmp/test_file_XSZ152/g_file_replace_0PQV52 774s # Test 4, using temporary directory /tmp/test_file_XSZ152/g_file_replace_F9QV52 774s # Test 5, using temporary directory /tmp/test_file_XSZ152/g_file_replace_VZQV52 774s # Test 6, using temporary directory /tmp/test_file_XSZ152/g_file_replace_IQNV52 774s # Test 7, using temporary directory /tmp/test_file_XSZ152/g_file_replace_QNZQ52 774s # Test 8, using temporary directory /tmp/test_file_XSZ152/g_file_replace_JHZQ52 774s # Test 9, using temporary directory /tmp/test_file_XSZ152/g_file_replace_42ZQ52 774s # Test 10, using temporary directory /tmp/test_file_XSZ152/g_file_replace_UWYQ52 774s # Test 11, using temporary directory /tmp/test_file_XSZ152/g_file_replace_U56Q52 774s # Test 12, using temporary directory /tmp/test_file_XSZ152/g_file_replace_VZ6Q52 774s # Test 13, using temporary directory /tmp/test_file_XSZ152/g_file_replace_DL7Q52 774s # Test 14, using temporary directory /tmp/test_file_XSZ152/g_file_replace_TW6Q52 774s # Test 15, using temporary directory /tmp/test_file_XSZ152/g_file_replace_JP2Q52 774s # Test 16, using temporary directory /tmp/test_file_XSZ152/g_file_replace_BRMQ52 774s # Test 17, using temporary directory /tmp/test_file_XSZ152/g_file_replace_3LJQ52 774s # Test 18, using temporary directory /tmp/test_file_XSZ152/g_file_replace_G8JQ52 774s # Test 19, using temporary directory /tmp/test_file_XSZ152/g_file_replace_5PVQ52 774s # Test 20, using temporary directory /tmp/test_file_XSZ152/g_file_replace_2ARQ52 774s # Test 21, using temporary directory /tmp/test_file_XSZ152/g_file_replace_BOQQ52 774s # Test 22, using temporary directory /tmp/test_file_XSZ152/g_file_replace_6POR52 774s # Test 23, using temporary directory /tmp/test_file_XSZ152/g_file_replace_CNOR52 774s # Test 24, using temporary directory /tmp/test_file_XSZ152/g_file_replace_P9MR52 774s # Test 25, using temporary directory /tmp/test_file_XSZ152/g_file_replace_EPLR52 774s # Test 26, using temporary directory /tmp/test_file_XSZ152/g_file_replace_QAMR52 774s # Test 27, using temporary directory /tmp/test_file_XSZ152/g_file_replace_Z1LR52 774s # Test 28, using temporary directory /tmp/test_file_XSZ152/g_file_replace_B3UR52 774s # Test 29, using temporary directory /tmp/test_file_XSZ152/g_file_replace_BOTR52 774s # Test 30, using temporary directory /tmp/test_file_XSZ152/g_file_replace_2JTR52 774s # Test 31, using temporary directory /tmp/test_file_XSZ152/g_file_replace_45TR52 774s # Test 32, using temporary directory /tmp/test_file_XSZ152/g_file_replace_IWSR52 774s # Test 33, using temporary directory /tmp/test_file_XSZ152/g_file_replace_YTCR52 774s # Test 34, using temporary directory /tmp/test_file_XSZ152/g_file_replace_YKCR52 774s # Test 35, using temporary directory /tmp/test_file_XSZ152/g_file_replace_V5CR52 774s # Test 36, using temporary directory /tmp/test_file_XSZ152/g_file_replace_Y58Q52 774s # Test 37, using temporary directory /tmp/test_file_XSZ152/g_file_replace_9YJR52 774s # Test 38, using temporary directory /tmp/test_file_XSZ152/g_file_replace_ZTIR52 774s # Test 39, using temporary directory /tmp/test_file_XSZ152/g_file_replace_SDHR52 774s # Test 40, using temporary directory /tmp/test_file_XSZ152/g_file_replace_LXFS52 774s # Test 41, using temporary directory /tmp/test_file_XSZ152/g_file_replace_QKES52 774s # Test 42, using temporary directory /tmp/test_file_XSZ152/g_file_replace_RPAS52 774s # Test 43, using temporary directory /tmp/test_file_XSZ152/g_file_replace_U3BS52 774s # Test 44, using temporary directory /tmp/test_file_XSZ152/g_file_replace_3DKS52 774s # Test 45, using temporary directory /tmp/test_file_XSZ152/g_file_replace_ABKS52 774s # Test 46, using temporary directory /tmp/test_file_XSZ152/g_file_replace_XGIS52 774s # Test 47, using temporary directory /tmp/test_file_XSZ152/g_file_replace_J4IS52 774s # Test 48, using temporary directory /tmp/test_file_XSZ152/g_file_replace_KBIS52 774s # We do not have CAP_DAC_OVERRIDE or equivalent 774s ok 41 /file/replace/write-only 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/replace/read-write/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/replace/read-write/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/replace/read-write/.dirs/system-config1:/tmp/test_file_XSZ152/file/replace/read-write/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/replace/read-write/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/replace/read-write/.dirs/system-data1:/tmp/test_file_XSZ152/file/replace/read-write/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/replace/read-write/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/replace/read-write/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/replace/read-write/.dirs/runtime 774s # /file/replace/read-write summary: Test various situations for g_file_replace() 774s # Current umask: 2 774s # Test 0, using temporary directory /tmp/test_file_XSZ152/g_file_replace_6T2R52 774s # Test 1, using temporary directory /tmp/test_file_XSZ152/g_file_replace_IE3R52 774s # Test 2, using temporary directory /tmp/test_file_XSZ152/g_file_replace_QW1R52 774s # Test 3, using temporary directory /tmp/test_file_XSZ152/g_file_replace_5NYR52 774s # Test 4, using temporary directory /tmp/test_file_XSZ152/g_file_replace_5EYR52 774s # Test 5, using temporary directory /tmp/test_file_XSZ152/g_file_replace_02YR52 774s # Test 6, using temporary directory /tmp/test_file_XSZ152/g_file_replace_XQ7R52 774s # Test 7, using temporary directory /tmp/test_file_XSZ152/g_file_replace_K95R52 774s # Test 8, using temporary directory /tmp/test_file_XSZ152/g_file_replace_QU6R52 774s # Test 9, using temporary directory /tmp/test_file_XSZ152/g_file_replace_RM6R52 774s # Test 10, using temporary directory /tmp/test_file_XSZ152/g_file_replace_9R4R52 774s # Test 11, using temporary directory /tmp/test_file_XSZ152/g_file_replace_KV5S52 774s # Test 12, using temporary directory /tmp/test_file_XSZ152/g_file_replace_592S52 774s # Test 13, using temporary directory /tmp/test_file_XSZ152/g_file_replace_Y32S52 774s # Test 14, using temporary directory /tmp/test_file_XSZ152/g_file_replace_8Z2S52 774s # Test 15, using temporary directory /tmp/test_file_XSZ152/g_file_replace_SNBT52 774s # Test 16, using temporary directory /tmp/test_file_XSZ152/g_file_replace_ZQAT52 774s # Test 17, using temporary directory /tmp/test_file_XSZ152/g_file_replace_OP8S52 774s # Test 18, using temporary directory /tmp/test_file_XSZ152/g_file_replace_VHSS52 774s # Test 19, using temporary directory /tmp/test_file_XSZ152/g_file_replace_35OS52 774s # Test 20, using temporary directory /tmp/test_file_XSZ152/g_file_replace_RRNS52 774s # Test 21, using temporary directory /tmp/test_file_XSZ152/g_file_replace_2ZWS52 774s # Test 22, using temporary directory /tmp/test_file_XSZ152/g_file_replace_ZZVS52 774s # Test 23, using temporary directory /tmp/test_file_XSZ152/g_file_replace_PMWS52 774s # Test 24, using temporary directory /tmp/test_file_XSZ152/g_file_replace_2UGZ52 774s # Test 25, using temporary directory /tmp/test_file_XSZ152/g_file_replace_YWEZ52 774s # Test 26, using temporary directory /tmp/test_file_XSZ152/g_file_replace_UPEZ52 774s # Test 27, using temporary directory /tmp/test_file_XSZ152/g_file_replace_4AFZ52 774s # Test 28, using temporary directory /tmp/test_file_XSZ152/g_file_replace_HJEZ52 774s # Test 29, using temporary directory /tmp/test_file_XSZ152/g_file_replace_WPMZ52 774s # Test 30, using temporary directory /tmp/test_file_XSZ152/g_file_replace_76MZ52 774s # Test 31, using temporary directory /tmp/test_file_XSZ152/g_file_replace_10MZ52 774s # Test 32, using temporary directory /tmp/test_file_XSZ152/g_file_replace_K6LZ52 774s # Test 33, using temporary directory /tmp/test_file_XSZ152/g_file_replace_E9HZ52 774s # Test 34, using temporary directory /tmp/test_file_XSZ152/g_file_replace_6WIZ52 774s # Test 35, using temporary directory /tmp/test_file_XSZ152/g_file_replace_VMIZ52 774s # Test 36, using temporary directory /tmp/test_file_XSZ152/g_file_replace_471Y52 774s # Test 37, using temporary directory /tmp/test_file_XSZ152/g_file_replace_ED3Y52 774s # Test 38, using temporary directory /tmp/test_file_XSZ152/g_file_replace_SEZY52 774s # Test 39, using temporary directory /tmp/test_file_XSZ152/g_file_replace_1CBZ52 774s # Test 40, using temporary directory /tmp/test_file_XSZ152/g_file_replace_TE7Y52 774s # Test 41, using temporary directory /tmp/test_file_XSZ152/g_file_replace_LQ6Y52 774s # Test 42, using temporary directory /tmp/test_file_XSZ152/g_file_replace_JH4Z52 774s # Test 43, using temporary directory /tmp/test_file_XSZ152/g_file_replace_PP2Z52 774s # Test 44, using temporary directory /tmp/test_file_XSZ152/g_file_replace_BV1Z52 774s # Test 45, using temporary directory /tmp/test_file_XSZ152/g_file_replace_3P1Z52 774s # Test 46, using temporary directory /tmp/test_file_XSZ152/g_file_replace_0IA052 774s # Test 47, using temporary directory /tmp/test_file_XSZ152/g_file_replace_3CA052 774s # Test 48, using temporary directory /tmp/test_file_XSZ152/g_file_replace_EO9Z52 774s # We do not have CAP_DAC_OVERRIDE or equivalent 774s ok 42 /file/replace/read-write 774s # End of replace tests 774s # Start of copy tests 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/copy/progress/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/copy/progress/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/copy/progress/.dirs/system-config1:/tmp/test_file_XSZ152/file/copy/progress/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/copy/progress/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/copy/progress/.dirs/system-data1:/tmp/test_file_XSZ152/file/copy/progress/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/copy/progress/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/copy/progress/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/copy/progress/.dirs/runtime 774s ok 43 /file/copy/progress 774s # End of copy tests 774s # Start of writev tests 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/no-bytes-written/.dirs/runtime 774s ok 44 /file/writev/no-bytes-written 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/no-vectors/.dirs/runtime 774s ok 45 /file/writev/no-vectors 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/empty-vectors/.dirs/runtime 774s ok 46 /file/writev/empty-vectors 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/too-big-vectors/.dirs/runtime 774s ok 47 /file/writev/too-big-vectors 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/async/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/async/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/async/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/async/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/async/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/async/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/async/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/async/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/async/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/async/.dirs/runtime 774s ok 48 /file/writev/async 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/async_all/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/async_all/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/async_all/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/async_all/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/async_all/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/async_all/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/async_all/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/async_all/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/async_all/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/async_all/.dirs/runtime 774s ok 49 /file/writev/async_all 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/async_all-empty-vectors/.dirs/runtime 774s ok 50 /file/writev/async_all-empty-vectors 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/async_all-no-vectors/.dirs/runtime 774s ok 51 /file/writev/async_all-no-vectors 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/async_all-to-big-vectors/.dirs/runtime 774s ok 52 /file/writev/async_all-to-big-vectors 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/system-config1:/tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/system-data1:/tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/writev/async_all-cancellation/.dirs/runtime 774s ok 53 /file/writev/async_all-cancellation 774s # End of writev tests 774s # Start of from-uri tests 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/system-config1:/tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/system-data1:/tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/from-uri/ignores-query-string/.dirs/runtime 774s ok 54 /file/from-uri/ignores-query-string 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/system-config1:/tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/system-data1:/tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_file_XSZ152/file/from-uri/ignores-fragment/.dirs/runtime 774s ok 55 /file/from-uri/ignores-fragment 774s # End of from-uri tests 774s # End of file tests 774s ok - glib/file.test 774s # Running test: glib/basics-gobject.test 774s TAP version 14 774s # random seed: R02Sa0a669191be00f81b9b72a03f69ae04c 774s 1..1 774s # Start of gobject tests 774s # private data during initialization: 54321 == 54321 774s # MAIN: emit test-signal: 774s # ::test_signal default_handler called 774s # ::test_signal default_handler called 774s # ::test_signal default_handler called 774s # signal return: "" 774s # MAIN: call iface print-string on test and derived object: 774s # Iface-FOO: "iface-string-from-test-type" from 0xab23dc139260 774s # Iface-BAR: "iface-string-from-derived-type" from 0xab23dc12e820 774s # chaining: 774s # Iface-FOO: "iface-string-from-derived-type" from 0xab23dc12e820 774s # private data after initialization: 54321 == 54321 774s ok 1 /gobject/basics 774s # End of gobject tests 774s ok - glib/basics-gobject.test 774s # Running test: glib/bytes.test 774s TAP version 14 774s ok - glib/bytes.test 774s # random seed: R02S669d7883d98740af7eb6ca9959240e2a 774s 1..21 774s # Start of bytes tests 774s ok 1 /bytes/new 774s ok 2 /bytes/new-take 774s ok 3 /bytes/new-static 774s ok 4 /bytes/new-with-free-func 774s ok 5 /bytes/new-from-bytes 774s ok 6 /bytes/new-from-bytes-slice 774s ok 7 /bytes/new-from-bytes-shared-ref 774s ok 8 /bytes/hash 774s ok 9 /bytes/equal 774s ok 10 /bytes/compare 774s ok 11 /bytes/null 774s ok 12 /bytes/get-region 774s # /bytes/unref-null summary: Test that calling g_bytes_unref() on NULL is a no-op 774s ok 13 /bytes/unref-null 774s # Start of to-data tests 774s ok 14 /bytes/to-data/transferred 774s ok 15 /bytes/to-data/two-refs 774s ok 16 /bytes/to-data/non-malloc 774s ok 17 /bytes/to-data/different-free-func 774s # End of to-data tests 774s # Start of to-array tests 774s ok 18 /bytes/to-array/transferred 774s ok 19 /bytes/to-array/two-refs 774s ok 20 /bytes/to-array/non-malloc 774s # Start of transferred tests 774s # g_bytes_unref_to_array() can only take GBytes up to G_MAXUINT in length; test that longer ones are rejected 774s ok 21 /bytes/to-array/transferred/oversize 774s # End of transferred tests 774s # End of to-array tests 774s # End of bytes tests 774s # Running test: glib/onceinit.test 774s TAP version 14 774s # random seed: R02S63dd9edfa2ebb82e96bd264f2c791267 774s 1..1 774s # Start of thread tests 774s ok 1 /thread/onceinit 774s # End of thread tests 774s ok - glib/onceinit.test 774s # Running test: glib/collate.test 774s TAP version 14 774s # random seed: R02S81e630c5e56db9fb3c5753b8491d3394 774s 1..9 774s # Start of unicode tests 774s # Start of collate tests 774s ok 1 /unicode/collate/0 774s ok 2 /unicode/collate/1 774s ok 3 /unicode/collate/2 774s # End of collate tests 774s # Start of collate-key tests 774s ok 4 /unicode/collate-key/0 774s ok 5 /unicode/collate-key/1 774s ok 6 /unicode/collate-key/2 774s # End of collate-key tests 774s # Start of collate-filename tests 774s ok 7 /unicode/collate-filename/0 774s ok 8 /unicode/collate-filename/1 774s ok 9 /unicode/collate-filename/2 774s # End of collate-filename tests 774s # End of unicode tests 774s ok - glib/collate.test 774s # Running test: glib/base64.test 774s TAP version 14 774s # random seed: R02S59f25691ddeaed5f90f7951ea4fc6ed3 774s 1..28 774s # Start of base64 tests 774s ok 1 /base64/encode 774s ok 2 /base64/decode 774s ok 3 /base64/decode-inplace 774s ok 4 /base64/encode-decode 774s # Start of full tests 774s ok 5 /base64/full/1 774s ok 6 /base64/full/2 774s ok 7 /base64/full/3 774s ok 8 /base64/full/4 774s # End of full tests 774s # Start of encode tests 774s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1698 774s ok 9 /base64/encode/empty 774s # Start of incremental tests 774s # Start of small-block tests 774s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066 774s ok 10 /base64/encode/incremental/small-block/1 774s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066 774s ok 11 /base64/encode/incremental/small-block/2 774s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066 774s ok 12 /base64/encode/incremental/small-block/3 774s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=780066 774s ok 13 /base64/encode/incremental/small-block/4 774s # End of small-block tests 774s # End of incremental tests 774s # End of encode tests 774s # Start of incremental tests 774s # Start of nobreak tests 774s ok 14 /base64/incremental/nobreak/1 774s ok 15 /base64/incremental/nobreak/2 774s ok 16 /base64/incremental/nobreak/3 774s ok 17 /base64/incremental/nobreak/4-a 774s ok 18 /base64/incremental/nobreak/4-b 774s ok 19 /base64/incremental/nobreak/4-c 774s # End of nobreak tests 774s # Start of break tests 774s ok 20 /base64/incremental/break/1 774s ok 21 /base64/incremental/break/2 774s ok 22 /base64/incremental/break/3 774s # End of break tests 774s # Start of smallblock tests 774s ok 23 /base64/incremental/smallblock/1 774s ok 24 /base64/incremental/smallblock/2 774s ok 25 /base64/incremental/smallblock/3 774s ok 26 /base64/incremental/smallblock/4 774s # End of smallblock tests 774s # End of incremental tests 774s # Start of decode tests 774s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1698 774s ok 27 /base64/decode/empty 774s # End of decode tests 774s # Start of encode-decode tests 774s # Vector 0: 774s # Vector 1: f 774s # Vector 2: fo 774s # Vector 3: foo 774s # Vector 4: foob 774s # Vector 5: fooba 774s # Vector 6: foobar 774s ok 28 /base64/encode-decode/rfc4648 774s # End of encode-decode tests 774s # End of base64 tests 774s ok - glib/base64.test 774s # Running test: glib/stream-rw_all.test 774s TAP version 14 774s # random seed: R02S084ca58525a76a38f9562298fe98deea 774s 1..3 774s # Start of stream tests 774s # Start of read_all_async tests 774s ok 1 /stream/read_all_async/memory 774s # End of read_all_async tests 774s # Start of write_all_async tests 774s ok 2 /stream/write_all_async/memory 774s # End of write_all_async tests 774s # Start of read_write_all_async tests 774s ok 3 /stream/read_write_all_async/pipe 774s # End of read_write_all_async tests 774s # End of stream tests 774s ok - glib/stream-rw_all.test 774s # Running test: glib/atomic-c-11.test 774s TAP version 14 774s # random seed: R02S8c04fe4c1c9b1db266c321f60e67ceed 774s 1..2 774s # Start of atomic tests 774s ok 1 /atomic/types 774s ok - glib/atomic-c-11.test 774s ok 2 /atomic/threaded 774s # End of atomic tests 774s # Running test: glib/gdbus-peer-object-manager.test 774s TAP version 14 774s # random seed: R02S75c2abcb41cd9224b44d79b9d20ba74d 774s 1..2 774s # Start of gdbus tests 774s # Start of peer-object-manager tests 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/system-config1:/tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/system-data1:/tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/normal/.dirs/runtime 774s ok 1 /gdbus/peer-object-manager/normal 774s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/home 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/cache 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/system-config1:/tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/system-config2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/config 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/system-data1:/tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/system-data2 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/data 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/state 774s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer-object-manager_N5O452/gdbus/peer-object-manager/root/.dirs/runtime 774s ok 2 /gdbus/peer-object-manager/root 774s # End of peer-object-manager tests 774s # End of gdbus tests 774s ok - glib/gdbus-peer-object-manager.test 774s # Running test: glib/refstring.test 774s TAP version 14 774s # random seed: R02S0d12d8f2edcd9fec4d1d9d5fe72bdd4b 774s 1..8 774s # Start of refstring tests 774s # s = 'hello, world' (0xc0aa256ac3c0) 774s ok 1 /refstring/base 774s ok 2 /refstring/length 774s ok 3 /refstring/length-auto 774s ok 4 /refstring/length-nuls 774s # s = 'hello, world' (0xc0aa256ac260) 774s # p = s = 'hello, world' (0xc0aa256ac260) 774s # releasing p[0xc0aa256ac260] ('hello, world') 774s # p = 'goodbye, world' (0xc0aa256ac3c0) 774s # releasing p[0xc0aa256ac3c0] ('goodbye, world') 774s # releasing s[0xc0aa256ac260] ('hello, world') 774s ok 5 /refstring/intern 774s # /refstring/hash_equal summary: Test g_ref_string_equal() in GHashTable 774s ok 6 /refstring/hash_equal 774s # /refstring/equal summary: Test g_ref_string_equal() standalone 774s ok 7 /refstring/equal 775s ok 8 /refstring/intern-thread-safety 775s # slow test /refstring/intern-thread-safety executed in 0.64 secs 775s # End of refstring tests 775s ok - glib/refstring.test 775s # Running test: glib/deprecated-properties.test 775s TAP version 14 775s # random seed: R02S64b7ee74c75a5596c300227ee55f8064 775s 1..3 775s # Start of deprecated-properties tests 775s ok 1 /deprecated-properties/construct 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2748 775s ok 2 /deprecated-properties/default-construct 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2748 775s ok 3 /deprecated-properties/set 775s # End of deprecated-properties tests 775s ok - glib/deprecated-properties.test 775s # Running test: glib/data-input-stream.test 775s TAP version 14 775s # random seed: R02Scb8bf179e5db7317c0c569ab3213db0d 775s 1..10 775s # Start of data-input-stream tests 775s ok 1 /data-input-stream/basic 775s ok 2 /data-input-stream/read-lines-LF 775s ok 3 /data-input-stream/read-lines-LF-valid-utf8 775s ok 4 /data-input-stream/read-lines-LF-invalid-utf8 775s ok 5 /data-input-stream/read-lines-CR 775s ok 6 /data-input-stream/read-lines-CR-LF 775s ok 7 /data-input-stream/read-lines-any 775s ok 8 /data-input-stream/read-until 775s # Test vector 0: part1 # part2 $ part3 ? part4 ? and #$?^ 775s # Test vector 1: {"key": "value"}? and ? 775s ok 9 /data-input-stream/read-upto 775s ok 10 /data-input-stream/read-int 775s # End of data-input-stream tests 775s ok - glib/data-input-stream.test 775s # Running test: glib/gdbus-connection-flush.test 775s TAP version 14 775s # random seed: R02Se179f9225357f380d3f2dd00549e9b23 775s 1..2 775s # Start of gdbus tests 775s # Start of connection tests 775s # Start of flush tests 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/system-config1:/tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/system-data1:/tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/busy/.dirs/runtime 775s ok 1 /gdbus/connection/flush/busy 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/system-config1:/tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/system-data1:/tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-flush_6EC152/gdbus/connection/flush/idle/.dirs/runtime 775s ok 2 /gdbus/connection/flush/idle 775s # End of flush tests 775s # End of connection tests 775s # End of gdbus tests 775s ok - glib/gdbus-connection-flush.test 775s # Running test: glib/gdbus-method-invocation.test 775s TAP version 14 775s # random seed: R02S2d6c1d8b5636c7458f49ba705ad9d85d 775s 1..1 775s # Start of gdbus tests 775s # Start of method-invocation tests 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/system-config1:/tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/system-data1:/tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-method-invocation_F0OW52/gdbus/method-invocation/return/.dirs/runtime 775s # /gdbus/method-invocation/return summary: Test calling g_dbus_method_invocation_return_*() in various ways 775s # Calling org.freedesktop.DBus.Properties.Get 775s # Calling org.freedesktop.DBus.Properties.Get 775s # Calling org.freedesktop.DBus.Properties.Get 775s # Calling org.freedesktop.DBus.Properties.Set 775s # Calling org.freedesktop.DBus.Properties.GetAll 775s # Calling org.example.Foo.WrongReturnType 775s # Calling org.example.Foo.GetFDs 775s # Calling org.example.Foo.GetFDs 775s # Calling org.example.Foo.ReturnError 775s # Calling org.example.Foo.CloseBeforeReturning 775s ok 1 /gdbus/method-invocation/return 775s # End of method-invocation tests 775s # End of gdbus tests 775s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 775s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 775s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 775s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 775s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 775s ok - glib/gdbus-method-invocation.test 775s # Running test: glib/asyncqueue.test 775s TAP version 14 775s # random seed: R02S1eedbeec157c6ed0b2a11019ade8266c 775s 1..7 775s # Start of asyncqueue tests 775s ok 1 /asyncqueue/basics 775s ok 2 /asyncqueue/sort 775s ok 3 /asyncqueue/destroy 775s # Executing: glib/asyncqueue.test 775s ok 4 /asyncqueue/threads 775s ok 5 /asyncqueue/timed 775s ok 6 /asyncqueue/remove 775s ok 7 /asyncqueue/push_front 775s # End of asyncqueue tests 775s ok - glib/asyncqueue.test 775s # Running test: glib/markup-escape.test 775s TAP version 14 775s # random seed: R02S022dd4e6daa4bbd733230a1f0b63deba 775s ok - glib/markup-escape.test 775s 1..41 775s # Start of markup tests 775s ok 1 /markup/format 775s # Start of escape-text tests 775s ok 2 /markup/escape-text/0 775s ok 3 /markup/escape-text/1 775s ok 4 /markup/escape-text/2 775s ok 5 /markup/escape-text/3 775s ok 6 /markup/escape-text/4 775s ok 7 /markup/escape-text/5 775s ok 8 /markup/escape-text/6 775s ok 9 /markup/escape-text/7 775s ok 10 /markup/escape-text/8 775s ok 11 /markup/escape-text/9 775s ok 12 /markup/escape-text/10 775s ok 13 /markup/escape-text/11 775s ok 14 /markup/escape-text/12 775s ok 15 /markup/escape-text/13 775s ok 16 /markup/escape-text/14 775s ok 17 /markup/escape-text/15 775s ok 18 /markup/escape-text/16 775s ok 19 /markup/escape-text/17 775s ok 20 /markup/escape-text/18 775s ok 21 /markup/escape-text/19 775s ok 22 /markup/escape-text/20 775s ok 23 /markup/escape-text/21 775s ok 24 /markup/escape-text/22 775s # End of escape-text tests 775s # Start of escape-unichar tests 775s ok 25 /markup/escape-unichar/0 775s ok 26 /markup/escape-unichar/1 775s ok 27 /markup/escape-unichar/2 775s ok 28 /markup/escape-unichar/3 775s ok 29 /markup/escape-unichar/4 775s ok 30 /markup/escape-unichar/5 775s ok 31 /markup/escape-unichar/6 775s ok 32 /markup/escape-unichar/7 775s ok 33 /markup/escape-unichar/8 775s ok 34 /markup/escape-unichar/9 775s ok 35 /markup/escape-unichar/10 775s ok 36 /markup/escape-unichar/11 775s ok 37 /markup/escape-unichar/12 775s ok 38 /markup/escape-unichar/13 775s ok 39 /markup/escape-unichar/14 775s ok 40 /markup/escape-unichar/15 775s ok 41 /markup/escape-unichar/16 775s # End of escape-unichar tests 775s # End of markup tests 775s # Running test: glib/notify-init2.test 775s TAP version 14 775s # random seed: R02S5531fd264c9d337bef65d3a0dfbf28ad 775s 1..1 775s # Start of properties tests 775s # /properties/notify-in-init2 summary: Test that notify freezing during construction of objects with custom constructor works 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2665 775s ok 1 /properties/notify-in-init2 775s # End of properties tests 775s ok - glib/notify-init2.test 775s # Running test: glib/value.test 775s TAP version 14 775s # random seed: R02S4c5a8aeb8b4ffa885912c6ba741d2f08 775s 1..9 775s # Start of value tests 775s ok 1 /value/basic 775s ok 2 /value/collection 775s ok 3 /value/copying 775s ok 4 /value/enum-transformation 775s ok 5 /value/gtype 775s # /value/string summary: Test that G_TYPE_STRING GValue copy properly 775s ok 6 /value/string 775s # Next: GObject object in GValue of GObject to GValue of GObject 775s # Next: GObject object in GValue of GObject to GValue of TestInterface 775s # Next: GObject object in GValue of GObject to GValue of TestObjectA 775s # Next: GObject object in GValue of GObject to GValue of TestObjectB 775s # Next: GObject object in GValue of GObject to GValue of TestObjectA1 775s # Next: GObject object in GValue of GObject to GValue of TestObjectA2 775s # Next: TestObjectA object in GValue of GObject to GValue of GObject 775s # Next: TestObjectA object in GValue of GObject to GValue of TestInterface 775s # Next: TestObjectA object in GValue of GObject to GValue of TestObjectA 775s # Next: TestObjectA object in GValue of GObject to GValue of TestObjectB 775s # Next: TestObjectA object in GValue of GObject to GValue of TestObjectA1 775s # Next: TestObjectA object in GValue of GObject to GValue of TestObjectA2 775s # Next: TestObjectA object in GValue of TestObjectA to GValue of GObject 775s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestInterface 775s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectA 775s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectB 775s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectA1 775s # Next: TestObjectA object in GValue of TestObjectA to GValue of TestObjectA2 775s # Next: TestObjectB object in GValue of GObject to GValue of GObject 775s # Next: TestObjectB object in GValue of GObject to GValue of TestInterface 775s # Next: TestObjectB object in GValue of GObject to GValue of TestObjectA 775s # Next: TestObjectB object in GValue of GObject to GValue of TestObjectB 775s # Next: TestObjectB object in GValue of GObject to GValue of TestObjectA1 775s # Next: TestObjectB object in GValue of GObject to GValue of TestObjectA2 775s # Next: TestObjectB object in GValue of TestInterface to GValue of GObject 775s # Next: TestObjectB object in GValue of TestInterface to GValue of TestInterface 775s # Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectA 775s # Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectB 775s # Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectA1 775s # Next: TestObjectB object in GValue of TestInterface to GValue of TestObjectA2 775s # Next: TestObjectB object in GValue of TestObjectB to GValue of GObject 775s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestInterface 775s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectA 775s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectB 775s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectA1 775s # Next: TestObjectB object in GValue of TestObjectB to GValue of TestObjectA2 775s # Next: TestObjectA1 object in GValue of GObject to GValue of GObject 775s # Next: TestObjectA1 object in GValue of GObject to GValue of TestInterface 775s # Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectA 775s # Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectB 775s # Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectA1 775s # Next: TestObjectA1 object in GValue of GObject to GValue of TestObjectA2 775s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of GObject 775s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestInterface 775s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectA 775s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectB 775s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectA1 775s # Next: TestObjectA1 object in GValue of TestObjectA to GValue of TestObjectA2 775s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of GObject 775s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestInterface 775s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectA 775s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectB 775s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectA1 775s # Next: TestObjectA1 object in GValue of TestObjectA1 to GValue of TestObjectA2 775s # Next: TestObjectA2 object in GValue of GObject to GValue of GObject 775s # Next: TestObjectA2 object in GValue of GObject to GValue of TestInterface 775s ok - glib/value.test 775s # Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectA 775s # Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectB 775s # Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectA1 775s # Next: TestObjectA2 object in GValue of GObject to GValue of TestObjectA2 775s # Next: TestObjectA2 object in GValue of TestInterface to GValue of GObject 775s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestInterface 775s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectA 775s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectB 775s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectA1 775s # Next: TestObjectA2 object in GValue of TestInterface to GValue of TestObjectA2 775s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of GObject 775s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestInterface 775s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectA 775s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectB 775s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectA1 775s # Next: TestObjectA2 object in GValue of TestObjectA to GValue of TestObjectA2 775s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of GObject 775s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestInterface 775s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectA 775s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectB 775s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectA1 775s # Next: TestObjectA2 object in GValue of TestObjectA2 to GValue of TestObjectA2 775s ok 7 /value/transform-object 775s # Start of array tests 775s ok 8 /value/array/basic 775s ok 9 /value/array/sort-with-data 775s # End of array tests 775s # End of value tests 775s # Running test: glib/charset.test 775s ok - glib/charset.test 775s # Running test: glib/simple-async-result.test 775s ok - glib/simple-async-result.test 775s # Running test: glib/gdbus-address-get-session.test 775s TAP version 14 775s # random seed: R02S6ef95323d6f7a12c3fe00e70fc78c6fb 775s 1..2 775s # Start of charset tests 775s # Test 0 775s # Test 1 775s # Test 2 775s # Test 3 775s ok 1 /charset/language_names_with_category 775s ok 2 /charset/language_names_with_category_async 775s # End of charset tests 775s TAP version 14 775s # random seed: R02S3f6e144e29c05bbfcd2017bf08c1e538 775s 1..2 775s # Start of gio tests 775s # Start of simple-async-result tests 775s ok 1 /gio/simple-async-result/test 775s # GLib-GIO-DEBUG: GTask 0xb91af56d0040 (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 /gio/simple-async-result/valid 775s # End of simple-async-result tests 775s # End of gio tests 775s TAP version 14 775s # random seed: R02Sc3e18a619a206314415da1df5a8c6e8a 775s 1..2 775s # Start of gdbus tests 775s ok 1 /gdbus/x11-autolaunch 775s ok 2 /gdbus/xdg-runtime 775s # End of gdbus tests 775s ok - glib/gdbus-address-get-session.test 775s # Running test: glib/assert-msg-test.py.test 775s TAP version 13 775s ok 1 __main__.TestAssertMessage.test_gassert 775s # assert-msg-test: /usr/libexec/installed-tests/glib/assert-msg-test 775s # tmpdir: /tmp/tmpu27pkwmj 775s # Running: ['/usr/libexec/installed-tests/glib/assert-msg-test'] 775s # Return code: -6 775s # Output: 775s # Bail out! GLib:ERROR:../../../glib/tests/assert-msg-test.c:31:main: assertion failed: (42 < 0) 775s # Error: 775s # ** 775s # GLib:ERROR:../../../glib/tests/assert-msg-test.c:31:main: assertion failed: (42 < 0) 775s ok 2 __main__.TestAssertMessage.test_gdb_gassert # SKIP GDB is not installed, skipping this test! 775s # assert-msg-test: /usr/libexec/installed-tests/glib/assert-msg-test 775s # tmpdir: /tmp/tmp6cj4m5tt 775s 1..2 775s ok - glib/assert-msg-test.py.test 775s # Running test: glib/thread-pool.test 775s TAP version 14 775s # random seed: R02S2977e1a09a0c5f577096194e5d280ff7 775s 1..5 775s # Start of thread_pool tests 775s # /thread_pool/shared summary: Tests that a shared, non-exclusive thread pool generally works. 775s ok 1 /thread_pool/shared 775s # /thread_pool/exclusive summary: Tests that an exclusive thread pool generally works. 775s ok 2 /thread_pool/exclusive 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2012 775s # /thread_pool/create_shared_after_exclusive summary: Tests that creating a shared pool after an exclusive one works. 775s ok 3 /thread_pool/create_shared_after_exclusive 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/121 775s ok 4 /thread_pool/create_full 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2012 775s # /thread_pool/create_exclusive_after_shared summary: Tests that creating an exclusive pool after a shared one works. 775s ok 5 /thread_pool/create_exclusive_after_shared 775s # End of thread_pool tests 775s ok - glib/thread-pool.test 775s # Running test: glib/environment.test 775s TAP version 14 775s # random seed: R02Sff80222414642d543fba0bad5ad6b266 775s 1..6 775s # Start of environ tests 775s # /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. 775s ok 1 /environ/listenv 775s # /environ/getenv summary: Test setting an environment variable using g_setenv(), and that the updated value is queryable using g_getenv(). 775s ok 2 /environ/getenv 775s ok 3 /environ/setenv 775s # /environ/array summary: Test getting and setting variables on a local envp array (rather than the global envp). 775s ok 4 /environ/array 775s # /environ/null summary: Test getting and setting variables on a NULL envp array. 775s ok 5 /environ/null 775s # /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. 775s ok 6 /environ/case 775s # End of environ tests 775s ok - glib/environment.test 775s # Running test: glib/reference.test 775s TAP version 14 775s # random seed: R02Sf331bf054601123245cc14a0f85067e3 775s 1..29 775s # Start of type tests 775s ok 1 /type/fundamentals 775s ok 2 /type/qdata 775s ok 3 /type/query 775s ok 4 /type/class-private 775s # End of type tests 775s # Start of object tests 775s ok 5 /object/clear 775s ok 6 /object/clear-function 775s ok 7 /object/set 775s ok 8 /object/set-function 775s ok 9 /object/value 775s ok 10 /object/initially-unowned 775s ok 11 /object/weak-pointer 775s ok 12 /object/weak-ref 775s ok 13 /object/toggle-ref 775s ok 14 /object/qdata 775s ok 15 /object/qdata2 775s # Start of set tests 775s # /object/set/derived-type summary: Check that g_set_object() doesn?t give strict aliasing warnings when used on types derived from GObject 775s ok 16 /object/set/derived-type 775s # End of set tests 775s # Start of weak-pointer tests 775s ok 17 /object/weak-pointer/clear 775s ok 18 /object/weak-pointer/clear-function 775s ok 19 /object/weak-pointer/set 775s ok 20 /object/weak-pointer/set-function 775s # End of weak-pointer tests 775s # Start of weak-ref tests 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390 775s # /object/weak-ref/on-dispose summary: Test that a weak ref set during dispose vfunc is cleared 775s ok 21 /object/weak-ref/on-dispose 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/865 775s # /object/weak-ref/on-run-dispose summary: Test that a weak ref is cleared on g_object_run_dispose() 775s ok 22 /object/weak-ref/on-run-dispose 775s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390 775s # /object/weak-ref/on-toggle-notify summary: Test that a weak ref set on toggle notify is cleared 775s ok 23 /object/weak-ref/on-toggle-notify 775s ok 24 /object/weak-ref/in-toggle-notify 775s ok 25 /object/weak-ref/many 775s # Start of concurrent tests 775s ok 26 /object/weak-ref/concurrent/0 775s ok - glib/reference.test 775s ok 27 /object/weak-ref/concurrent/1 775s # End of concurrent tests 775s # End of weak-ref tests 775s # Start of toggle-ref tests 775s ok 28 /object/toggle-ref/ref-on-dispose 775s ok 29 /object/toggle-ref/ref-and-notify-on-dispose 775s # End of toggle-ref tests 775s # End of object tests 775s # Running test: glib/utils-isolated.test 775s TAP version 14 775s # random seed: R02S6767551881517533780fc07cf1b650af 775s 1..11 775s # Start of utils-isolated tests 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/tmp-dir/.dirs/runtime 775s ok 1 /utils-isolated/tmp-dir 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/home-dir/.dirs/runtime 775s ok 2 /utils-isolated/home-dir 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/user-cache-dir/.dirs/runtime 775s ok 3 /utils-isolated/user-cache-dir 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/system-config-dirs/.dirs/runtime 775s ok 4 /utils-isolated/system-config-dirs 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/user-config-dir/.dirs/runtime 775s ok 5 /utils-isolated/user-config-dir 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/system-data-dirs/.dirs/runtime 775s ok 6 /utils-isolated/system-data-dirs 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/user-data-dir/.dirs/runtime 775s ok 7 /utils-isolated/user-data-dir 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/user-state-dir/.dirs/runtime 775s ok 8 /utils-isolated/user-state-dir 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/user-runtime-dir/.dirs/runtime 775s ok 9 /utils-isolated/user-runtime-dir 775s # Start of cleanup tests 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/runtime 775s Unable to clean up temporary directory /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs/runtime: Directory not empty 775s Unable to clean up temporary directory /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors/.dirs: Directory not empty 775s Unable to clean up temporary directory /tmp/test_utils-isolated_420952/utils-isolated/cleanup/handles-errors: Directory not empty 775s ok 10 /utils-isolated/cleanup/handles-errors 775s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/system-config1:/tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/system-data1:/tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks/.dirs/runtime 775s Unable to clean up temporary directory /tmp/test_utils-isolated_420952/utils-isolated/cleanup/doesnt-follow-symlinks: No such file or directory 775s ok 11 /utils-isolated/cleanup/doesnt-follow-symlinks 775s # End of cleanup tests 775s # End of utils-isolated tests 775s ok - glib/utils-isolated.test 775s # Running test: glib/portal-support-flatpak-gsettings-only.test 775s TAP version 14 775s # random seed: R02S32a72e3c30af943f80fe31b720eeb752 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-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/home 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/cache 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/system-config1:/tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/system-config2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/config 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/system-data1:/tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/system-data2 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/data 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/state 775s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/runtime 775s # Creating .flatpak-info in /tmp/test_portal-support-flatpak-gsettings-only_O2I952/portal-support/flatpak/gsettings/.dirs/runtime/.flatpak-info 775s ok 1 /portal-support/flatpak/gsettings 775s # End of flatpak tests 775s # End of portal-support tests 775s ok - glib/portal-support-flatpak-gsettings-only.test 775s # Running test: glib/mainloop.test 775s TAP version 14 775s # random seed: R02S002b8a284913acdf6ef36a19cea652ca 775s 1..45 775s # Start of maincontext tests 775s ok 1 /maincontext/basic 775s # Add same-priority sources: 15 775s # Find each source: 2 776s # Remove in random order: 26 776s ok 2 /maincontext/nsources_same_priority 776s # Add different-priority sources: 17 776s # Find each source: 2 776s # Remove in random order: 31 776s ok 3 /maincontext/nsources_different_priority 776s # Add sources from threads: 259 776s # Remove sources from threads: 168 776s ok 4 /maincontext/nsources_threadpool 776s ok 5 /maincontext/source_finalization 776s # /maincontext/idle-once summary: Test g_idle_add_once() works 776s ok 6 /maincontext/idle-once 776s # /maincontext/timeout-once summary: Test g_timeout_add_once() works 776s ok 7 /maincontext/timeout-once 776s # Start of source_finalization_from_source tests 776s # /maincontext/source_finalization_from_source/0 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 8 /maincontext/source_finalization_from_source/0 776s # /maincontext/source_finalization_from_source/1 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 9 /maincontext/source_finalization_from_source/1 776s # /maincontext/source_finalization_from_source/2 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 10 /maincontext/source_finalization_from_source/2 776s # /maincontext/source_finalization_from_source/3 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 11 /maincontext/source_finalization_from_source/3 776s # /maincontext/source_finalization_from_source/4 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 12 /maincontext/source_finalization_from_source/4 776s # /maincontext/source_finalization_from_source/5 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 13 /maincontext/source_finalization_from_source/5 776s # /maincontext/source_finalization_from_source/6 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 14 /maincontext/source_finalization_from_source/6 776s # /maincontext/source_finalization_from_source/7 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 15 /maincontext/source_finalization_from_source/7 776s # /maincontext/source_finalization_from_source/8 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 16 /maincontext/source_finalization_from_source/8 776s # /maincontext/source_finalization_from_source/9 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 776s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 776s ok 17 /maincontext/source_finalization_from_source/9 776s # End of source_finalization_from_source tests 776s # Start of source_finalization_from_dispatch tests 776s # /maincontext/source_finalization_from_dispatch/0 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 776s ok 18 /maincontext/source_finalization_from_dispatch/0 776s # /maincontext/source_finalization_from_dispatch/1 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 776s ok 19 /maincontext/source_finalization_from_dispatch/1 776s # /maincontext/source_finalization_from_dispatch/2 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 776s ok 20 /maincontext/source_finalization_from_dispatch/2 776s # End of source_finalization_from_dispatch tests 776s # End of maincontext tests 776s # Start of mainloop tests 776s ok 21 /mainloop/basic 776s ok 22 /mainloop/timeouts # SKIP Not running timing heavy test 776s ok 23 /mainloop/priorities 777s ok 24 /mainloop/invoke 777s # slow test /mainloop/invoke executed in 0.50 secs 778s ok 25 /mainloop/child_sources 778s # slow test /mainloop/child_sources executed in 1.21 secs 780s # Executing: glib/mainloop.test 780s ok 26 /mainloop/recursive_child_sources 780s # slow test /mainloop/recursive_child_sources executed in 2.20 secs 780s ok 27 /mainloop/recursive_loop_child_sources 780s ok 28 /mainloop/swapping_child_sources 780s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=701283 780s ok 29 /mainloop/blocked_child_sources 781s ok 30 /mainloop/source_time 781s # slow test /mainloop/source_time executed in 1.00 secs 781s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=687098 781s ok 31 /mainloop/overflow 782s ok 32 /mainloop/ready-time 782s # slow test /mainloop/ready-time executed in 0.50 secs 782s ok 33 /mainloop/wakeup 782s ok 34 /mainloop/remove-invalid 782s ok 35 /mainloop/unref-while-pending 783s ok 36 /mainloop/unix-fd 783s # slow test /mainloop/unix-fd executed in 0.57 secs 783s ok 37 /mainloop/unix-fd-source 783s ok 38 /mainloop/source-unix-fd-api 783s ok - glib/mainloop.test 783s ok 39 /mainloop/wait 783s ok 40 /mainloop/unix-file-poll 783s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1592 783s ok 41 /mainloop/unix-fd-priority 783s ok 42 /mainloop/nfds 783s ok 43 /mainloop/steal-fd 783s # Start of ownerless-polling tests 783s ok 44 /mainloop/ownerless-polling/attach-first 783s ok 45 /mainloop/ownerless-polling/pop-first 783s # End of ownerless-polling tests 783s # End of mainloop tests 783s TAP version 13 783s ok 1 __main__.TestGenmarshal.test_empty_list 783s # glib-genmarshal: /usr/bin/glib-genmarshal 783s # tmpdir: /tmp/tmpehrah9xp 783s # /tmp/tmpehrah9xp/tmpgiyvtxjl.list: 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpehrah9xp/tmpgiyvtxjl.list', '--header', '--quiet'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # 783s # #include 783s # 783s # G_BEGIN_DECLS 783s # 783s # 783s # G_END_DECLS 783s # 783s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 783s # Error: 783s # 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpehrah9xp/tmpgiyvtxjl.list', '--body', '--quiet'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #include 783s # 783s # #ifdef G_ENABLE_DEBUG 783s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 783s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 783s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 783s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 783s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 783s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 783s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 783s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 783s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 783s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 783s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 783s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 783s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 783s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 783s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 783s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 783s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 783s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 783s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 783s # #else /* !G_ENABLE_DEBUG */ 783s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 783s # * Do not access GValues directly in your code. Instead, use the 783s # * g_value_get_*() functions 783s # */ 783s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 783s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 783s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 783s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 783s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 783s # #endif /* !G_ENABLE_DEBUG */ 783s # Error: 783s ok 2 __main__.TestGenmarshal.test_help 783s # glib-genmarshal: /usr/bin/glib-genmarshal 783s # tmpdir: /tmp/tmp3lfwf0f2 783s # Running: ['/usr/bin/glib-genmarshal', '--help'] 783s # Return code: 0 783s # Output: 783s # usage: glib-genmarshal [-h] [--prefix STRING] [--output FILE] [--skip-source] 783s # [--internal] [--valist-marshallers] [-v] 783s # [--g-fatal-warnings] [--include-header [HEADER]] 783s # [--pragma-once] [-D CPP_DEFINES] [-U CPP_UNDEFINES] 783s # [--prototypes] [--header] [--body] [--stdinc | 783s # --nostdinc] [--quiet | --verbose] 783s # [FILE ...] 783s # 783s # Generate signal marshallers for GObject 783s # 783s # positional arguments: 783s # FILE Files with lists of marshallers to generate, or "-" 783s # for standard input 783s # 783s # options: 783s # -h, --help show this help message and exit 783s # --prefix STRING Specify marshaller prefix 783s # --output FILE Write output into the specified file 783s # --skip-source Skip source location comments 783s # --internal Mark generated functions as internal 783s # --valist-marshallers Generate va_list marshallers 783s # -v, --version Print version information, and exit 783s # --g-fatal-warnings Make warnings fatal 783s # --include-header [HEADER] 783s # Include the specified header in the body 783s # --pragma-once Use "pragma once" as the inclusion guard 783s # -D CPP_DEFINES Pre-processor define 783s # -U CPP_UNDEFINES Pre-processor undefine 783s # --prototypes Generate the marshallers prototype in the C code 783s # --header Generate C headers 783s # --body Generate C code 783s # --stdinc Include standard marshallers 783s # --nostdinc Use standard marshallers 783s # --quiet Only print warnings and errors 783s # --verbose Be verbose, and include debugging information 783s # Error: 783s ok 3 __main__.TestGenmarshal.test_no_args 783s # glib-genmarshal: /usr/bin/glib-genmarshal 783s # tmpdir: /tmp/tmpbbyqz4aa 783s # Running: ['/usr/bin/glib-genmarshal'] 783s # Return code: 0 783s # Output: 783s # 783s # Error: 783s ok 4 __main__.TestGenmarshal.test_void_boolean 783s # glib-genmarshal: /usr/bin/glib-genmarshal 783s # tmpdir: /tmp/tmpyah2l21u 783s # /tmp/tmpyah2l21u/tmp2474mxxf.list: VOID:BOOLEAN 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpyah2l21u/tmp2474mxxf.list', '--header', '--quiet'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # 783s # #include 783s # 783s # G_BEGIN_DECLS 783s # 783s # /* VOID:BOOLEAN (/tmp/tmpyah2l21u/tmp2474mxxf.list:1) */ 783s # #define g_cclosure_user_marshal_VOID__BOOLEAN g_cclosure_marshal_VOID__BOOLEAN 783s # 783s # 783s # G_END_DECLS 783s # 783s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 783s # Error: 783s # 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpyah2l21u/tmp2474mxxf.list', '--body', '--quiet'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #include 783s # 783s # #ifdef G_ENABLE_DEBUG 783s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 783s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 783s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 783s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 783s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 783s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 783s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 783s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 783s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 783s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 783s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 783s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 783s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 783s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 783s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 783s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 783s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 783s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 783s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 783s # #else /* !G_ENABLE_DEBUG */ 783s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 783s # * Do not access GValues directly in your code. Instead, use the 783s # * g_value_get_*() functions 783s # */ 783s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 783s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 783s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 783s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 783s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 783s # #endif /* !G_ENABLE_DEBUG */ 783s # Error: 783s ok 5 __main__.TestGenmarshal.test_void_boolean_int64 783s # glib-genmarshal: /usr/bin/glib-genmarshal 783s # tmpdir: /tmp/tmpellyqex6 783s # /tmp/tmpellyqex6/tmpn2m8yaoc.list: VOID:BOOLEAN,INT64 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpellyqex6/tmpn2m8yaoc.list', '--header', '--quiet'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # 783s # #include 783s # 783s # G_BEGIN_DECLS 783s # 783s # /* VOID:BOOLEAN,INT64 (/tmp/tmpellyqex6/tmpn2m8yaoc.list:1) */ 783s # extern 783s # void g_cclosure_user_marshal_VOID__BOOLEAN_INT64 (GClosure *closure, 783s # GValue *return_value, 783s # guint n_param_values, 783s # const GValue *param_values, 783s # gpointer invocation_hint, 783s # gpointer marshal_data); 783s # 783s # 783s # G_END_DECLS 783s # 783s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 783s # Error: 783s # 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpellyqex6/tmpn2m8yaoc.list', '--body', '--quiet'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #include 783s # 783s # #ifdef G_ENABLE_DEBUG 783s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 783s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 783s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 783s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 783s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 783s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 783s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 783s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 783s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 783s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 783s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 783s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 783s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 783s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 783s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 783s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 783s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 783s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 783s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 783s # #else /* !G_ENABLE_DEBUG */ 783s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 783s # * Do not access GValues directly in your code. Instead, use the 783s # * g_value_get_*() functions 783s # */ 783s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 783s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 783s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 783s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 783s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 783s # #endif /* !G_ENABLE_DEBUG */ 783s # 783s # /* VOID:BOOLEAN,INT64 (/tmp/tmpellyqex6/tmpn2m8yaoc.list:1) */ 783s # void 783s # g_cclosure_user_marshal_VOID__BOOLEAN_INT64 (GClosure *closure, 783s # GValue *return_value G_GNUC_UNUSED, 783s # guint n_param_values, 783s # const GValue *param_values, 783s # gpointer invocation_hint G_GNUC_UNUSED, 783s # gpointer marshal_data) 783s # { 783s # typedef void (*GMarshalFunc_VOID__BOOLEAN_INT64) (gpointer data1, 783s # gboolean arg1, 783s # gint64 arg2, 783s # gpointer data2); 783s # GCClosure *cc = (GCClosure *) closure; 783s # gpointer data1, data2; 783s # GMarshalFunc_VOID__BOOLEAN_INT64 callback; 783s # 783s # g_return_if_fail (n_param_values == 3); 783s # 783s # if (G_CCLOSURE_SWAP_DATA (closure)) 783s # { 783s # data1 = closure->data; 783s # data2 = g_value_peek_pointer (param_values + 0); 783s # } 783s # else 783s # { 783s # data1 = g_value_peek_pointer (param_values + 0); 783s # data2 = closure->data; 783s # } 783s # callback = (GMarshalFunc_VOID__BOOLEAN_INT64) (marshal_data ? marshal_data : cc->callback); 783s # 783s # callback (data1, 783s # g_marshal_value_peek_boolean (param_values + 1), 783s # g_marshal_value_peek_int64 (param_values + 2), 783s # data2); 783s # } 783s # Error: 783s # Running test: glib/genmarshal.py.test 783s ok 6 __main__.TestGenmarshal.test_void_param_nostdinc 783s # glib-genmarshal: /usr/bin/glib-genmarshal 783s # tmpdir: /tmp/tmpohnnhs51 783s # /tmp/tmpohnnhs51/tmpdjm7v_as.list: VOID:PARAM 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpohnnhs51/tmpdjm7v_as.list', '--header', '--quiet', '--nostdinc', '--valist-marshaller'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # 783s # G_BEGIN_DECLS 783s # 783s # /* VOID:PARAM (/tmp/tmpohnnhs51/tmpdjm7v_as.list:1) */ 783s # extern 783s # void g_cclosure_user_marshal_VOID__PARAM (GClosure *closure, 783s # GValue *return_value, 783s # guint n_param_values, 783s # const GValue *param_values, 783s # gpointer invocation_hint, 783s # gpointer marshal_data); 783s # extern 783s # void g_cclosure_user_marshal_VOID__PARAMv (GClosure *closure, 783s # GValue *return_value, 783s # gpointer instance, 783s # va_list args, 783s # gpointer marshal_data, 783s # int n_params, 783s # GType *param_types); 783s # 783s # 783s # G_END_DECLS 783s # 783s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 783s # Error: 783s # 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpohnnhs51/tmpdjm7v_as.list', '--body', '--quiet', '--nostdinc', '--valist-marshaller'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #ifdef G_ENABLE_DEBUG 783s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 783s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 783s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 783s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 783s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 783s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 783s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 783s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 783s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 783s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 783s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 783s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 783s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 783s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 783s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 783s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 783s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 783s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 783s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 783s # #else /* !G_ENABLE_DEBUG */ 783s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 783s # * Do not access GValues directly in your code. Instead, use the 783s # * g_value_get_*() functions 783s # */ 783s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 783s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 783s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 783s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 783s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 783s # #endif /* !G_ENABLE_DEBUG */ 783s # 783s # /* VOID:PARAM (/tmp/tmpohnnhs51/tmpdjm7v_as.list:1) */ 783s # void 783s # g_cclosure_user_marshal_VOID__PARAM (GClosure *closure, 783s # GValue *return_value G_GNUC_UNUSED, 783s # guint n_param_values, 783s # const GValue *param_values, 783s # gpointer invocation_hint G_GNUC_UNUSED, 783s # gpointer marshal_data) 783s # { 783s # typedef void (*GMarshalFunc_VOID__PARAM) (gpointer data1, 783s # gpointer arg1, 783s # gpointer data2); 783s # GCClosure *cc = (GCClosure *) closure; 783s # gpointer data1, data2; 783s # GMarshalFunc_VOID__PARAM callback; 783s # 783s # g_return_if_fail (n_param_values == 2); 783s # 783s # if (G_CCLOSURE_SWAP_DATA (closure)) 783s # { 783s # data1 = closure->data; 783s # data2 = g_value_peek_pointer (param_values + 0); 783s # } 783s # else 783s # { 783s # data1 = g_value_peek_pointer (param_values + 0); 783s # data2 = closure->data; 783s # } 783s # callback = (GMarshalFunc_VOID__PARAM) (marshal_data ? marshal_data : cc->callback); 783s # 783s # callback (data1, 783s # g_marshal_value_peek_param (param_values + 1), 783s # data2); 783s # } 783s # 783s # void 783s # g_cclosure_user_marshal_VOID__PARAMv (GClosure *closure, 783s # GValue *return_value G_GNUC_UNUSED, 783s # gpointer instance, 783s # va_list args, 783s # gpointer marshal_data, 783s # int n_params, 783s # GType *param_types) 783s # { 783s # typedef void (*GMarshalFunc_VOID__PARAM) (gpointer data1, 783s # gpointer arg1, 783s # gpointer data2); 783s # GCClosure *cc = (GCClosure *) closure; 783s # gpointer data1, data2; 783s # GMarshalFunc_VOID__PARAM callback; 783s # gpointer arg0; 783s # va_list args_copy; 783s # 783s # va_copy (args_copy, args); 783s # arg0 = (gpointer) va_arg (args_copy, gpointer); 783s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 783s # arg0 = g_param_spec_ref (arg0); 783s # va_end (args_copy); 783s # 783s # 783s # if (G_CCLOSURE_SWAP_DATA (closure)) 783s # { 783s # data1 = closure->data; 783s # data2 = instance; 783s # } 783s # else 783s # { 783s # data1 = instance; 783s # data2 = closure->data; 783s # } 783s # callback = (GMarshalFunc_VOID__PARAM) (marshal_data ? marshal_data : cc->callback); 783s # 783s # callback (data1, 783s # arg0, 783s # data2); 783s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 783s # g_param_spec_unref (arg0); 783s # } 783s # Error: 783s ok 7 __main__.TestGenmarshal.test_void_string_nostdinc 783s # glib-genmarshal: /usr/bin/glib-genmarshal 783s # tmpdir: /tmp/tmp2hk_q_1y 783s # /tmp/tmp2hk_q_1y/tmp_gb1miow.list: VOID:STRING 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp2hk_q_1y/tmp_gb1miow.list', '--header', '--quiet', '--nostdinc', '--valist-marshaller'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # 783s # G_BEGIN_DECLS 783s # 783s # /* VOID:STRING (/tmp/tmp2hk_q_1y/tmp_gb1miow.list:1) */ 783s # extern 783s # void g_cclosure_user_marshal_VOID__STRING (GClosure *closure, 783s # GValue *return_value, 783s # guint n_param_values, 783s # const GValue *param_values, 783s # gpointer invocation_hint, 783s # gpointer marshal_data); 783s # extern 783s # void g_cclosure_user_marshal_VOID__STRINGv (GClosure *closure, 783s # GValue *return_value, 783s # gpointer instance, 783s # va_list args, 783s # gpointer marshal_data, 783s # int n_params, 783s # GType *param_types); 783s # 783s # 783s # G_END_DECLS 783s # 783s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 783s # Error: 783s # 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmp2hk_q_1y/tmp_gb1miow.list', '--body', '--quiet', '--nostdinc', '--valist-marshaller'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #ifdef G_ENABLE_DEBUG 783s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 783s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 783s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 783s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 783s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 783s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 783s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 783s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 783s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 783s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 783s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 783s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 783s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 783s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 783s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 783s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 783s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 783s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 783s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 783s # #else /* !G_ENABLE_DEBUG */ 783s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 783s # * Do not access GValues directly in your code. Instead, use the 783s # * g_value_get_*() functions 783s # */ 783s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 783s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 783s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 783s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 783s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 783s # #endif /* !G_ENABLE_DEBUG */ 783s # 783s # /* VOID:STRING (/tmp/tmp2hk_q_1y/tmp_gb1miow.list:1) */ 783s # void 783s # g_cclosure_user_marshal_VOID__STRING (GClosure *closure, 783s # GValue *return_value G_GNUC_UNUSED, 783s # guint n_param_values, 783s # const GValue *param_values, 783s # gpointer invocation_hint G_GNUC_UNUSED, 783s # gpointer marshal_data) 783s # { 783s # typedef void (*GMarshalFunc_VOID__STRING) (gpointer data1, 783s # gpointer arg1, 783s # gpointer data2); 783s # GCClosure *cc = (GCClosure *) closure; 783s # gpointer data1, data2; 783s # GMarshalFunc_VOID__STRING callback; 783s # 783s # g_return_if_fail (n_param_values == 2); 783s # 783s # if (G_CCLOSURE_SWAP_DATA (closure)) 783s # { 783s # data1 = closure->data; 783s # data2 = g_value_peek_pointer (param_values + 0); 783s # } 783s # else 783s # { 783s # data1 = g_value_peek_pointer (param_values + 0); 783s # data2 = closure->data; 783s # } 783s # callback = (GMarshalFunc_VOID__STRING) (marshal_data ? marshal_data : cc->callback); 783s # 783s # callback (data1, 783s # g_marshal_value_peek_string (param_values + 1), 783s # data2); 783s # } 783s # 783s # void 783s # g_cclosure_user_marshal_VOID__STRINGv (GClosure *closure, 783s # GValue *return_value G_GNUC_UNUSED, 783s # gpointer instance, 783s # va_list args, 783s # gpointer marshal_data, 783s # int n_params, 783s # GType *param_types) 783s # { 783s # typedef void (*GMarshalFunc_VOID__STRING) (gpointer data1, 783s # gpointer arg1, 783s # gpointer data2); 783s # GCClosure *cc = (GCClosure *) closure; 783s # gpointer data1, data2; 783s # GMarshalFunc_VOID__STRING callback; 783s # gpointer arg0; 783s # va_list args_copy; 783s # 783s # va_copy (args_copy, args); 783s # arg0 = (gpointer) va_arg (args_copy, gpointer); 783s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 783s # arg0 = g_strdup (arg0); 783s # va_end (args_copy); 783s # 783s # 783s # if (G_CCLOSURE_SWAP_DATA (closure)) 783s # { 783s # data1 = closure->data; 783s # data2 = instance; 783s # } 783s # else 783s # { 783s # data1 = instance; 783s # data2 = closure->data; 783s # } 783s # callback = (GMarshalFunc_VOID__STRING) (marshal_data ? marshal_data : cc->callback); 783s # 783s # callback (data1, 783s # arg0, 783s # data2); 783s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 783s # g_free (arg0); 783s # } 783s # Error: 783s ok 8 __main__.TestGenmarshal.test_void_variant_nostdinc_valist_marshaller 783s # glib-genmarshal: /usr/bin/glib-genmarshal 783s # tmpdir: /tmp/tmpr2d9c28b 783s # /tmp/tmpr2d9c28b/tmppz60bxa1.list: VOID:VARIANT 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpr2d9c28b/tmppz60bxa1.list', '--header', '--quiet', '--nostdinc', '--valist-marshaller'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #ifndef __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # #define __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ 783s # 783s # G_BEGIN_DECLS 783s # 783s # /* VOID:VARIANT (/tmp/tmpr2d9c28b/tmppz60bxa1.list:1) */ 783s # extern 783s # void g_cclosure_user_marshal_VOID__VARIANT (GClosure *closure, 783s # GValue *return_value, 783s # guint n_param_values, 783s # const GValue *param_values, 783s # gpointer invocation_hint, 783s # gpointer marshal_data); 783s # extern 783s # void g_cclosure_user_marshal_VOID__VARIANTv (GClosure *closure, 783s # GValue *return_value, 783s # gpointer instance, 783s # va_list args, 783s # gpointer marshal_data, 783s # int n_params, 783s # GType *param_types); 783s # 783s # 783s # G_END_DECLS 783s # 783s # #endif /* __G_CCLOSURE_USER_MARSHAL_MARSHAL_H__ */ 783s # Error: 783s # 783s # Running: ['/usr/bin/glib-genmarshal', '/tmp/tmpr2d9c28b/tmppz60bxa1.list', '--body', '--quiet', '--nostdinc', '--valist-marshaller'] 783s # Return code: 0 783s # Output: 783s # /* 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. */ 783s # #ifdef G_ENABLE_DEBUG 783s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 783s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 783s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 783s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 783s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 783s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 783s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 783s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 783s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 783s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 783s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 783s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 783s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 783s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 783s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 783s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 783s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 783s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 783s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 783s # #else /* !G_ENABLE_DEBUG */ 783s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 783s # * Do not access GValues directly in your code. Instead, use the 783s # * g_value_get_*() functions 783s # */ 783s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 783s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 783s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 783s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 783s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 783s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 783s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 783s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 783s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 783s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 783s # #endif /* !G_ENABLE_DEBUG */ 783s # 783s # /* VOID:VARIANT (/tmp/tmpr2d9c28b/tmppz60bxa1.list:1) */ 783s # void 783s # g_cclosure_user_marshal_VOID__VARIANT (GClosure *closure, 783s # GValue *return_value G_GNUC_UNUSED, 783s # guint n_param_values, 783s # const GValue *param_values, 783s # gpointer invocation_hint G_GNUC_UNUSED, 783s # gpointer marshal_data) 783s # { 783s # typedef void (*GMarshalFunc_VOID__VARIANT) (gpointer data1, 783s # gpointer arg1, 783s # gpointer data2); 783s # GCClosure *cc = (GCClosure *) closure; 783s # gpointer data1, data2; 783s # GMarshalFunc_VOID__VARIANT callback; 783s # 783s # g_return_if_fail (n_param_values == 2); 783s # 783s # if (G_CCLOSURE_SWAP_DATA (closure)) 783s # { 783s # data1 = closure->data; 783s # data2 = g_value_peek_pointer (param_values + 0); 783s # } 783s # else 783s # { 783s # data1 = g_value_peek_pointer (param_values + 0); 783s # data2 = closure->data; 783s # } 783s # callback = (GMarshalFunc_VOID__VARIANT) (marshal_data ? marshal_data : cc->callback); 783s # 783s # callback (data1, 783s # g_marshal_value_peek_variant (param_values + 1), 783s # data2); 783s # } 783s # 783s # void 783s # g_cclosure_user_marshal_VOID__VARIANTv (GClosure *closure, 783s # GValue *return_value G_GNUC_UNUSED, 783s # gpointer instance, 783s # va_list args, 783s # gpointer marshal_data, 783s # int n_params, 783s # GType *param_types) 783s # { 783s # typedef void (*GMarshalFunc_VOID__VARIANT) (gpointer data1, 783s # gpointer arg1, 783s # gpointer data2); 783s # GCClosure *cc = (GCClosure *) closure; 783s # gpointer data1, data2; 783s # GMarshalFunc_VOID__VARIANT callback; 783s # gpointer arg0; 783s # va_list args_copy; 783s # 783s # va_copy (args_copy, args); 783s # arg0 = (gpointer) va_arg (args_copy, gpointer); 783s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 783s # arg0 = g_variant_ref_sink (arg0); 783s # va_end (args_copy); 783s # 783s # 783s # if (G_CCLOSURE_SWAP_DATA (closure)) 783s # { 783s # data1 = closure->data; 783s # data2 = instance; 783s # } 783s # else 783s # { 783s # data1 = instance; 783s # data2 = closure->data; 783s # } 783s # callback = (GMarshalFunc_VOID__VARIANT) (marshal_data ? marshal_data : cc->callback); 783s # 783s # callback (data1, 783s # arg0, 783s # data2); 783s # if ((param_types[0] & G_SIGNAL_TYPE_STATIC_SCOPE) == 0 && arg0 != NULL) 783s # g_variant_unref (arg0); 783s # } 783s # Error: 783s 1..8 783s ok - glib/genmarshal.py.test 783s # Running test: glib/macros.test 783s TAP version 14 783s # random seed: R02Sf8be26f93ebbb1e75fb5fb92294cfaeb 783s 1..3 783s # Start of alignof tests 783s ok 1 /alignof/fallback 783s # End of alignof tests 783s # Start of assert tests 783s ok 2 /assert/static 783s # End of assert tests 783s # Start of struct tests 783s ok 3 /struct/sizeof_member 783s # End of struct tests 783s ok - glib/macros.test 783s # Running test: glib/gnotification.test 783s TAP version 14 783s # random seed: R02S960219f253a7bac5ba01428de9fd328b 783s 1..2 783s # Start of gnotification tests 783s ok 1 /gnotification/basic 783s ok 2 /gnotification/properties 783s # End of gnotification tests 783s ok - glib/gnotification.test 783s # Running test: glib/cond.test 783s TAP version 14 783s # random seed: R02S79c376485030dceed825c7de6766900e 783s 1..4 783s # Start of thread tests 783s ok 1 /thread/cond1 783s ok 2 /thread/cond2 783s # Start of cond tests 784s ok 3 /thread/cond/wait-until 784s # slow test /thread/cond/wait-until executed in 1.02 secs 784s # Start of wait-until tests 784s # /thread/cond/wait-until/contended-and-interrupted summary: Check proper handling of errno in g_cond_wait_until with a contended mutex 784s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/957 785s # Executing: glib/cond.test 785s ok 4 /thread/cond/wait-until/contended-and-interrupted 785s # slow test /thread/cond/wait-until/contended-and-interrupted executed in 1.10 secs 785s # End of wait-until tests 785s # End of cond tests 785s # End of thread tests 785s ok - glib/cond.test 785s # Running test: glib/spawn-singlethread.test 785s TAP version 14 785s # random seed: R02Sb1d307d2240da3262f896856fee8c8df 785s 1..9 785s # Start of gthread tests 785s ok 1 /gthread/spawn-single-sync 785s # /gthread/spawn-stderr-socket summary: Test calling g_spawn_sync() with its stderr FD set to a socket 785s ok 2 /gthread/spawn-stderr-socket 785s ok 3 /gthread/spawn-single-async 785s # thread 1 785s # thread 1 785s ok - glib/spawn-singlethread.test 785s # Running test: glib/network-address.test 785s ok 4 /gthread/spawn-single-async-with-fds 785s ok 5 /gthread/spawn-async-with-invalid-fds 785s ok 6 /gthread/spawn-script 785s ok 7 /gthread/spawn-posix-spawn 785s # Start of spawn tests 785s ok 8 /gthread/spawn/nonexistent 785s # FD map: 785s # • 5 → 15 785s # • 6 → 16 785s # • 7 → 17 785s # • 8 → 18 785s # • 9 → 19 785s # • 10 → 20 785s # • 11 → 21 785s # • 12 → 22 785s # • 13 → 23 785s # • 3 → 13 785s ok 9 /gthread/spawn/fd-assignment-clash 785s # End of spawn tests 785s # End of gthread tests 785s TAP version 14 785s # random seed: R02S693acd66601345f8d9b532f0742be2ad 785s 1..72 785s # Start of network-address tests 785s ok 1 /network-address/basic 785s ok 2 /network-address/scope-id 785s ok 3 /network-address/uri-scope-id 785s ok 4 /network-address/to-string 785s # Start of parse-host tests 785s ok 5 /network-address/parse-host/0 785s ok 6 /network-address/parse-host/1 785s ok 7 /network-address/parse-host/2 785s ok 8 /network-address/parse-host/3 785s ok 9 /network-address/parse-host/4 785s ok 10 /network-address/parse-host/5 785s ok 11 /network-address/parse-host/6 785s ok 12 /network-address/parse-host/7 785s ok 13 /network-address/parse-host/8 785s ok 14 /network-address/parse-host/9 785s ok 15 /network-address/parse-host/10 785s ok 16 /network-address/parse-host/11 785s ok 17 /network-address/parse-host/12 785s ok 18 /network-address/parse-host/13 785s # End of parse-host tests 785s # Start of parse-uri tests 785s ok 19 /network-address/parse-uri/0 785s ok 20 /network-address/parse-uri/1 785s ok 21 /network-address/parse-uri/2 785s ok 22 /network-address/parse-uri/3 785s ok 23 /network-address/parse-uri/4 785s ok 24 /network-address/parse-uri/5 785s ok 25 /network-address/parse-uri/6 785s ok 26 /network-address/parse-uri/7 785s ok 27 /network-address/parse-uri/8 785s ok 28 /network-address/parse-uri/9 785s # End of parse-uri tests 785s # Start of resolve-address tests 785s # Input: 192.168.1.2 785s ok 29 /network-address/resolve-address/0 785s # Input: fe80::42 785s ok 30 /network-address/resolve-address/1 785s # Input: 192.168.1.2:80 785s ok 31 /network-address/resolve-address/2 785s # Input: [fe80::42] 785s ok 32 /network-address/resolve-address/3 785s # Input: [fe80::42]:80 785s ok 33 /network-address/resolve-address/4 785s # Input: 192.168.258 785s ok 34 /network-address/resolve-address/5 785s # Input: 192.11010306 785s ok 35 /network-address/resolve-address/6 785s # Input: 3232235778 785s ok 36 /network-address/resolve-address/7 785s # Input: 0300.0250.0001.0001 785s ok 37 /network-address/resolve-address/8 785s # Input: 0xC0.0xA8.0x01.0x02 785s ok 38 /network-address/resolve-address/9 785s # Input: 0xc0.0xa8.0x01.0x02 785s ok 39 /network-address/resolve-address/10 785s # Input: 0xc0a80102 785s ok 40 /network-address/resolve-address/11 785s # End of resolve-address tests 785s # Start of loopback tests 785s ok 41 /network-address/loopback/basic 785s ok 42 /network-address/loopback/sync 785s ok 43 /network-address/loopback/async 785s # End of loopback tests 785s # Start of localhost tests 785s ok 44 /network-address/localhost/async 785s ok 45 /network-address/localhost/sync 785s # End of localhost tests 785s # Start of happy-eyeballs tests 785s ok 46 /network-address/happy-eyeballs/basic 785s ok 47 /network-address/happy-eyeballs/parallel 785s ok 48 /network-address/happy-eyeballs/slow-ipv4 786s ok 49 /network-address/happy-eyeballs/slow-ipv6 786s ok 50 /network-address/happy-eyeballs/very-slow-ipv6 786s ok 51 /network-address/happy-eyeballs/slow-connection-and-ipv4 786s # slow test /network-address/happy-eyeballs/slow-connection-and-ipv4 executed in 0.80 secs 786s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 786s ok 52 /network-address/happy-eyeballs/ipv6-error-ipv4-first 786s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 786s ok 53 /network-address/happy-eyeballs/ipv6-error-ipv6-first 786s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/865 786s # /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. 786s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 787s ok 54 /network-address/happy-eyeballs/ipv6-error-ipv4-very-slow 787s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 787s ok 55 /network-address/happy-eyeballs/ipv4-error-ipv6-first 787s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 787s ok 56 /network-address/happy-eyeballs/ipv4-error-ipv4-first 787s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 787s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 787s ok 57 /network-address/happy-eyeballs/both-error 787s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 787s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 787s ok 58 /network-address/happy-eyeballs/both-error-delays-1 787s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 787s # GLib-GIO-DEBUG: IPv6 DNS error: IPv6 Broken 787s ok 59 /network-address/happy-eyeballs/both-error-delays-2 787s # GLib-GIO-DEBUG: IPv4 DNS error: IPv4 Broken 787s ok 60 /network-address/happy-eyeballs/both-error-delays-3 787s # End of happy-eyeballs tests 787s # End of network-address tests 787s # Start of gresolver tests 787s # Start of resolve-address tests 787s # Input: 192.168.1.2 787s ok 61 /gresolver/resolve-address/0 787s # Input: fe80::42 787s ok 62 /gresolver/resolve-address/1 787s # Input: 192.168.1.2:80 787s # Error: Error resolving ?192.168.1.2:80?: Name or service not known 787s ok 63 /gresolver/resolve-address/2 787s # Input: [fe80::42] 787s # Error: Error resolving ?[fe80::42]?: Name or service not known 787s ok 64 /gresolver/resolve-address/3 787s # Input: [fe80::42]:80 787s # Error: Error resolving ?[fe80::42]:80?: Name or service not known 787s ok 65 /gresolver/resolve-address/4 787s # Input: 192.168.258 787s # Error: Error resolving ?192.168.258?: Name or service not known 787s ok 66 /gresolver/resolve-address/5 787s # Input: 192.11010306 787s # Error: Error resolving ?192.11010306?: Name or service not known 787s ok 67 /gresolver/resolve-address/6 787s # Input: 3232235778 787s # Error: Error resolving ?3232235778?: Name or service not known 787s ok 68 /gresolver/resolve-address/7 787s # Input: 0300.0250.0001.0001 787s # Error: Error resolving ?0300.0250.0001.0001?: Name or service not known 787s ok 69 /gresolver/resolve-address/8 787s # Input: 0xC0.0xA8.0x01.0x02 787s # Error: Error resolving ?0xC0.0xA8.0x01.0x02?: Name or service not known 787s ok 70 /gresolver/resolve-address/9 787s # Input: 0xc0.0xa8.0x01.0x02 787s # Error: Error resolving ?0xc0.0xa8.0x01.0x02?: Name or service not known 787s ok 71 /gresolver/resolve-address/10 787s # Input: 0xc0a80102 787s # Error: Error resolving ?0xc0a80102?: Name or service not known 787s ok 72 /gresolver/resolve-address/11 787s # End of resolve-address tests 787s # End of gresolver tests 787s ok - glib/network-address.test 787s # Running test: glib/static-link.test 787s Test disabled because GLIB_TEST_COMPILATION is not set in the env. 787s If you wish to run this test, set GLIB_TEST_COMPILATION=1 in the env, 787s and make sure you have glib build dependencies installed, including 787s meson. 787s ok # SKIP - glib/static-link.test 787s # Running test: glib/portal-support-none.test 787s TAP version 14 787s # random seed: R02S71970b5b16e51cdbc034a2ddf2341722 787s 1..1 787s # Start of portal-support tests 787s ok 1 /portal-support/none 787s # End of portal-support tests 787s ok - glib/portal-support-none.test 787s # Running test: glib/accumulator.test 787s TAP version 14 787s # random seed: R02Sb71a13b19545b9fb29687937600de1ed 787s 1..1 787s # Start of gobject tests 787s ok 1 /gobject/accumulator 787s # End of gobject tests 787s ok - glib/accumulator.test 787s # Running test: glib/strfuncs.test 787s TAP version 14 787s # random seed: R02Sac56fb97d87dc679a17900714632769f 787s 1..51 787s # Start of strfuncs tests 787s ok 1 /strfuncs/ascii-strcasecmp 787s ok 2 /strfuncs/ascii_strdown 787s ok 3 /strfuncs/ascii_strdup 787s ok 4 /strfuncs/ascii_strtod 787s ok 5 /strfuncs/bounds-check 787s ok 6 /strfuncs/has-prefix 787s ok 7 /strfuncs/has-prefix-macro 787s ok 8 /strfuncs/has-suffix 787s ok 9 /strfuncs/has-suffix-macro 787s ok 10 /strfuncs/memdup 787s ok 11 /strfuncs/memdup2 787s ok 12 /strfuncs/set_str 787s ok 13 /strfuncs/stpcpy 787s ok 14 /strfuncs/str_match_string 787s ok 15 /strfuncs/str_tokenize_and_fold 787s ok 16 /strfuncs/strcanon 787s ok 17 /strfuncs/strchomp 787s ok 18 /strfuncs/strchug 787s ok 19 /strfuncs/strcompress-strescape 787s ok 20 /strfuncs/strconcat 787s ok 21 /strfuncs/strdelimit 787s ok 22 /strfuncs/strdup 787s ok 23 /strfuncs/strdup-printf 787s ok 24 /strfuncs/strdupv 787s ok 25 /strfuncs/strerror 787s ok 26 /strfuncs/strip-context 787s ok 27 /strfuncs/strjoin 787s ok 28 /strfuncs/strjoinv 787s ok 29 /strfuncs/strlcat 787s ok 30 /strfuncs/strlcpy 787s ok 31 /strfuncs/strncasecmp 787s ok 32 /strfuncs/strndup 787s ok 33 /strfuncs/strnfill 787s ok 34 /strfuncs/strreverse 787s ok 35 /strfuncs/strsignal 787s ok 36 /strfuncs/strsplit 787s ok 37 /strfuncs/strsplit-set 787s ok 38 /strfuncs/strstr 787s ok 39 /strfuncs/strtod 787s ok 40 /strfuncs/strtoull-strtoll 787s ok 41 /strfuncs/strup 787s ok 42 /strfuncs/strv-contains 787s ok 43 /strfuncs/strv-equal 787s ok 44 /strfuncs/strv-length 787s ok 45 /strfuncs/test-is-to-digit 787s ok 46 /strfuncs/transliteration 787s # /strfuncs/str-equal summary: Test macro and function forms of g_str_equal() 787s ok 47 /strfuncs/str-equal 787s ok 48 /strfuncs/str-is-ascii 787s # Start of ascii-string-to-num tests 787s ok 49 /strfuncs/ascii-string-to-num/pathological 787s ok 50 /strfuncs/ascii-string-to-num/usual 787s # End of ascii-string-to-num tests 787s # Start of strdup tests 787s ok 51 /strfuncs/strdup/inline 787s # End of strdup tests 787s # End of strfuncs tests 787s ok - glib/strfuncs.test 787s # Running test: glib/codegen.py.test 787s TAP version 13 787s ok 1 __main__.TestCodegen.test_call_flags_and_timeout_method_args 787s # gdbus-codegen: /usr/bin/gdbus-codegen 787s # tmpdir: /tmp/tmpbr8xmsv3 787s # /tmp/tmpbr8xmsv3/tmp602j40do.xml: 787s # 787s # 787s # 787s # 787s # 787s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpbr8xmsv3/tmp602j40do.xml', '--output', '-', '--header'] 787s # Return code: 0 787s # Output: 787s # /* 787s # * This file is generated by gdbus-codegen, do not modify it. 787s # * 787s # * The license of this code is the same as for the D-Bus interface description 787s # * it was derived from. Note that it links to GLib, so must comply with the 787s # * LGPL linking clauses. 787s # */ 787s # 787s # #ifndef __STDOUT__ 787s # #define __STDOUT__ 787s # 787s # #include 787s # 787s # G_BEGIN_DECLS 787s # 787s # 787s # /* ------------------------------------------------------------------------ */ 787s # /* Declarations for org.project.UsefulInterface */ 787s # 787s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE (org_project_useful_interface_get_type ()) 787s # #define ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterface)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterfaceIface)) 787s # 787s # struct _OrgProjectUsefulInterface; 787s # typedef struct _OrgProjectUsefulInterface OrgProjectUsefulInterface; 787s # typedef struct _OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceIface; 787s # 787s # struct _OrgProjectUsefulInterfaceIface 787s # { 787s # GTypeInterface parent_iface; 787s # 787s # gboolean (*handle_useful_method) ( 787s # OrgProjectUsefulInterface *object, 787s # GDBusMethodInvocation *invocation); 787s # 787s # }; 787s # 787s # GType org_project_useful_interface_get_type (void) G_GNUC_CONST; 787s # 787s # GDBusInterfaceInfo *org_project_useful_interface_interface_info (void); 787s # guint org_project_useful_interface_override_properties (GObjectClass *klass, guint property_id_begin); 787s # 787s # 787s # /* D-Bus method call completion functions: */ 787s # void org_project_useful_interface_complete_useful_method ( 787s # OrgProjectUsefulInterface *object, 787s # GDBusMethodInvocation *invocation); 787s # 787s # 787s # 787s # /* D-Bus method calls: */ 787s # void org_project_useful_interface_call_useful_method ( 787s # OrgProjectUsefulInterface *proxy, 787s # GCancellable *cancellable, 787s # GAsyncReadyCallback callback, 787s # gpointer user_data); 787s # 787s # gboolean org_project_useful_interface_call_useful_method_finish ( 787s # OrgProjectUsefulInterface *proxy, 787s # GAsyncResult *res, 787s # GError **error); 787s # 787s # gboolean org_project_useful_interface_call_useful_method_sync ( 787s # OrgProjectUsefulInterface *proxy, 787s # GCancellable *cancellable, 787s # GError **error); 787s # 787s # 787s # 787s # /* ---- */ 787s # 787s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY (org_project_useful_interface_proxy_get_type ()) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxy)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 787s # 787s # typedef struct _OrgProjectUsefulInterfaceProxy OrgProjectUsefulInterfaceProxy; 787s # typedef struct _OrgProjectUsefulInterfaceProxyClass OrgProjectUsefulInterfaceProxyClass; 787s # typedef struct _OrgProjectUsefulInterfaceProxyPrivate OrgProjectUsefulInterfaceProxyPrivate; 787s # 787s # struct _OrgProjectUsefulInterfaceProxy 787s # { 787s # /*< private >*/ 787s # GDBusProxy parent_instance; 787s # OrgProjectUsefulInterfaceProxyPrivate *priv; 787s # }; 787s # 787s # struct _OrgProjectUsefulInterfaceProxyClass 787s # { 787s # GDBusProxyClass parent_class; 787s # }; 787s # 787s # GType org_project_useful_interface_proxy_get_type (void) G_GNUC_CONST; 787s # 787s # #if GLIB_CHECK_VERSION(2, 44, 0) 787s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceProxy, g_object_unref) 787s # #endif 787s # 787s # void org_project_useful_interface_proxy_new ( 787s # GDBusConnection *connection, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GAsyncReadyCallback callback, 787s # gpointer user_data); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_finish ( 787s # GAsyncResult *res, 787s # GError **error); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_sync ( 787s # GDBusConnection *connection, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GError **error); 787s # 787s # void org_project_useful_interface_proxy_new_for_bus ( 787s # GBusType bus_type, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GAsyncReadyCallback callback, 787s # gpointer user_data); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_finish ( 787s # GAsyncResult *res, 787s # GError **error); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_sync ( 787s # GBusType bus_type, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GError **error); 787s # 787s # 787s # /* ---- */ 787s # 787s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON (org_project_useful_interface_skeleton_get_type ()) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeleton)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 787s # 787s # typedef struct _OrgProjectUsefulInterfaceSkeleton OrgProjectUsefulInterfaceSkeleton; 787s # typedef struct _OrgProjectUsefulInterfaceSkeletonClass OrgProjectUsefulInterfaceSkeletonClass; 787s # typedef struct _OrgProjectUsefulInterfaceSkeletonPrivate OrgProjectUsefulInterfaceSkeletonPrivate; 787s # 787s # struct _OrgProjectUsefulInterfaceSkeleton 787s # { 787s # /*< private >*/ 787s # GDBusInterfaceSkeleton parent_instance; 787s # OrgProjectUsefulInterfaceSkeletonPrivate *priv; 787s # }; 787s # 787s # struct _OrgProjectUsefulInterfaceSkeletonClass 787s # { 787s # GDBusInterfaceSkeletonClass parent_class; 787s # }; 787s # 787s # GType org_project_useful_interface_skeleton_get_type (void) G_GNUC_CONST; 787s # 787s # #if GLIB_CHECK_VERSION(2, 44, 0) 787s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceSkeleton, g_object_unref) 787s # #endif 787s # 787s # OrgProjectUsefulInterface *org_project_useful_interface_skeleton_new (void); 787s # 787s # 787s # G_END_DECLS 787s # 787s # #endif /* __STDOUT__ */ 787s # Error: 787s # 787s # /tmp/tmpbr8xmsv3/tmpv5gh23cj.xml: 787s # 787s # 787s # 787s # 787s # 787s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpbr8xmsv3/tmpv5gh23cj.xml', '--output', '-', '--header', '--glib-min-required', '2.32'] 787s # Return code: 0 787s # Output: 787s # /* 787s # * This file is generated by gdbus-codegen, do not modify it. 787s # * 787s # * The license of this code is the same as for the D-Bus interface description 787s # * it was derived from. Note that it links to GLib, so must comply with the 787s # * LGPL linking clauses. 787s # */ 787s # 787s # #ifndef __STDOUT__ 787s # #define __STDOUT__ 787s # 787s # #include 787s # 787s # G_BEGIN_DECLS 787s # 787s # 787s # /* ------------------------------------------------------------------------ */ 787s # /* Declarations for org.project.UsefulInterface */ 787s # 787s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE (org_project_useful_interface_get_type ()) 787s # #define ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterface)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterfaceIface)) 787s # 787s # struct _OrgProjectUsefulInterface; 787s # typedef struct _OrgProjectUsefulInterface OrgProjectUsefulInterface; 787s # typedef struct _OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceIface; 787s # 787s # struct _OrgProjectUsefulInterfaceIface 787s # { 787s # GTypeInterface parent_iface; 787s # 787s # gboolean (*handle_useful_method) ( 787s # OrgProjectUsefulInterface *object, 787s # GDBusMethodInvocation *invocation); 787s # 787s # }; 787s # 787s # GType org_project_useful_interface_get_type (void) G_GNUC_CONST; 787s # 787s # GDBusInterfaceInfo *org_project_useful_interface_interface_info (void); 787s # guint org_project_useful_interface_override_properties (GObjectClass *klass, guint property_id_begin); 787s # 787s # 787s # /* D-Bus method call completion functions: */ 787s # void org_project_useful_interface_complete_useful_method ( 787s # OrgProjectUsefulInterface *object, 787s # GDBusMethodInvocation *invocation); 787s # 787s # 787s # 787s # /* D-Bus method calls: */ 787s # void org_project_useful_interface_call_useful_method ( 787s # OrgProjectUsefulInterface *proxy, 787s # GCancellable *cancellable, 787s # GAsyncReadyCallback callback, 787s # gpointer user_data); 787s # 787s # gboolean org_project_useful_interface_call_useful_method_finish ( 787s # OrgProjectUsefulInterface *proxy, 787s # GAsyncResult *res, 787s # GError **error); 787s # 787s # gboolean org_project_useful_interface_call_useful_method_sync ( 787s # OrgProjectUsefulInterface *proxy, 787s # GCancellable *cancellable, 787s # GError **error); 787s # 787s # 787s # 787s # /* ---- */ 787s # 787s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY (org_project_useful_interface_proxy_get_type ()) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxy)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 787s # 787s # typedef struct _OrgProjectUsefulInterfaceProxy OrgProjectUsefulInterfaceProxy; 787s # typedef struct _OrgProjectUsefulInterfaceProxyClass OrgProjectUsefulInterfaceProxyClass; 787s # typedef struct _OrgProjectUsefulInterfaceProxyPrivate OrgProjectUsefulInterfaceProxyPrivate; 787s # 787s # struct _OrgProjectUsefulInterfaceProxy 787s # { 787s # /*< private >*/ 787s # GDBusProxy parent_instance; 787s # OrgProjectUsefulInterfaceProxyPrivate *priv; 787s # }; 787s # 787s # struct _OrgProjectUsefulInterfaceProxyClass 787s # { 787s # GDBusProxyClass parent_class; 787s # }; 787s # 787s # GType org_project_useful_interface_proxy_get_type (void) G_GNUC_CONST; 787s # 787s # #if GLIB_CHECK_VERSION(2, 44, 0) 787s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceProxy, g_object_unref) 787s # #endif 787s # 787s # void org_project_useful_interface_proxy_new ( 787s # GDBusConnection *connection, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GAsyncReadyCallback callback, 787s # gpointer user_data); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_finish ( 787s # GAsyncResult *res, 787s # GError **error); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_sync ( 787s # GDBusConnection *connection, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GError **error); 787s # 787s # void org_project_useful_interface_proxy_new_for_bus ( 787s # GBusType bus_type, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GAsyncReadyCallback callback, 787s # gpointer user_data); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_finish ( 787s # GAsyncResult *res, 787s # GError **error); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_sync ( 787s # GBusType bus_type, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GError **error); 787s # 787s # 787s # /* ---- */ 787s # 787s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON (org_project_useful_interface_skeleton_get_type ()) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeleton)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 787s # 787s # typedef struct _OrgProjectUsefulInterfaceSkeleton OrgProjectUsefulInterfaceSkeleton; 787s # typedef struct _OrgProjectUsefulInterfaceSkeletonClass OrgProjectUsefulInterfaceSkeletonClass; 787s # typedef struct _OrgProjectUsefulInterfaceSkeletonPrivate OrgProjectUsefulInterfaceSkeletonPrivate; 787s # 787s # struct _OrgProjectUsefulInterfaceSkeleton 787s # { 787s # /*< private >*/ 787s # GDBusInterfaceSkeleton parent_instance; 787s # OrgProjectUsefulInterfaceSkeletonPrivate *priv; 787s # }; 787s # 787s # struct _OrgProjectUsefulInterfaceSkeletonClass 787s # { 787s # GDBusInterfaceSkeletonClass parent_class; 787s # }; 787s # 787s # GType org_project_useful_interface_skeleton_get_type (void) G_GNUC_CONST; 787s # 787s # #if GLIB_CHECK_VERSION(2, 44, 0) 787s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceSkeleton, g_object_unref) 787s # #endif 787s # 787s # OrgProjectUsefulInterface *org_project_useful_interface_skeleton_new (void); 787s # 787s # 787s # G_END_DECLS 787s # 787s # #endif /* __STDOUT__ */ 787s # Error: 787s # 787s # /tmp/tmpbr8xmsv3/tmpbc1wausm.xml: 787s # 787s # 787s # 787s # 787s # 787s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpbr8xmsv3/tmpbc1wausm.xml', '--output', '-', '--header', '--glib-min-required', '2.64'] 787s # Return code: 0 787s # Output: 787s # /* 787s # * This file is generated by gdbus-codegen, do not modify it. 787s # * 787s # * The license of this code is the same as for the D-Bus interface description 787s # * it was derived from. Note that it links to GLib, so must comply with the 787s # * LGPL linking clauses. 787s # */ 787s # 787s # #ifndef __STDOUT__ 787s # #define __STDOUT__ 787s # 787s # #include 787s # 787s # G_BEGIN_DECLS 787s # 787s # 787s # /* ------------------------------------------------------------------------ */ 787s # /* Declarations for org.project.UsefulInterface */ 787s # 787s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE (org_project_useful_interface_get_type ()) 787s # #define ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterface)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE, OrgProjectUsefulInterfaceIface)) 787s # 787s # struct _OrgProjectUsefulInterface; 787s # typedef struct _OrgProjectUsefulInterface OrgProjectUsefulInterface; 787s # typedef struct _OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceIface; 787s # 787s # struct _OrgProjectUsefulInterfaceIface 787s # { 787s # GTypeInterface parent_iface; 787s # 787s # gboolean (*handle_useful_method) ( 787s # OrgProjectUsefulInterface *object, 787s # GDBusMethodInvocation *invocation); 787s # 787s # }; 787s # 787s # GType org_project_useful_interface_get_type (void) G_GNUC_CONST; 787s # 787s # GDBusInterfaceInfo *org_project_useful_interface_interface_info (void); 787s # guint org_project_useful_interface_override_properties (GObjectClass *klass, guint property_id_begin); 787s # 787s # 787s # /* D-Bus method call completion functions: */ 787s # void org_project_useful_interface_complete_useful_method ( 787s # OrgProjectUsefulInterface *object, 787s # GDBusMethodInvocation *invocation); 787s # 787s # 787s # 787s # /* D-Bus method calls: */ 787s # void org_project_useful_interface_call_useful_method ( 787s # OrgProjectUsefulInterface *proxy, 787s # GDBusCallFlags call_flags, 787s # gint timeout_msec, 787s # GCancellable *cancellable, 787s # GAsyncReadyCallback callback, 787s # gpointer user_data); 787s # 787s # gboolean org_project_useful_interface_call_useful_method_finish ( 787s # OrgProjectUsefulInterface *proxy, 787s # GAsyncResult *res, 787s # GError **error); 787s # 787s # gboolean org_project_useful_interface_call_useful_method_sync ( 787s # OrgProjectUsefulInterface *proxy, 787s # GDBusCallFlags call_flags, 787s # gint timeout_msec, 787s # GCancellable *cancellable, 787s # GError **error); 787s # 787s # 787s # 787s # /* ---- */ 787s # 787s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY (org_project_useful_interface_proxy_get_type ()) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxy)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyClass)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY)) 787s # 787s # typedef struct _OrgProjectUsefulInterfaceProxy OrgProjectUsefulInterfaceProxy; 787s # typedef struct _OrgProjectUsefulInterfaceProxyClass OrgProjectUsefulInterfaceProxyClass; 787s # typedef struct _OrgProjectUsefulInterfaceProxyPrivate OrgProjectUsefulInterfaceProxyPrivate; 787s # 787s # struct _OrgProjectUsefulInterfaceProxy 787s # { 787s # /*< private >*/ 787s # GDBusProxy parent_instance; 787s # OrgProjectUsefulInterfaceProxyPrivate *priv; 787s # }; 787s # 787s # struct _OrgProjectUsefulInterfaceProxyClass 787s # { 787s # GDBusProxyClass parent_class; 787s # }; 787s # 787s # GType org_project_useful_interface_proxy_get_type (void) G_GNUC_CONST; 787s # 787s # #if GLIB_CHECK_VERSION(2, 44, 0) 787s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceProxy, g_object_unref) 787s # #endif 787s # 787s # void org_project_useful_interface_proxy_new ( 787s # GDBusConnection *connection, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GAsyncReadyCallback callback, 787s # gpointer user_data); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_finish ( 787s # GAsyncResult *res, 787s # GError **error); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_sync ( 787s # GDBusConnection *connection, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GError **error); 787s # 787s # void org_project_useful_interface_proxy_new_for_bus ( 787s # GBusType bus_type, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GAsyncReadyCallback callback, 787s # gpointer user_data); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_finish ( 787s # GAsyncResult *res, 787s # GError **error); 787s # OrgProjectUsefulInterface *org_project_useful_interface_proxy_new_for_bus_sync ( 787s # GBusType bus_type, 787s # GDBusProxyFlags flags, 787s # const gchar *name, 787s # const gchar *object_path, 787s # GCancellable *cancellable, 787s # GError **error); 787s # 787s # 787s # /* ---- */ 787s # 787s # #define TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON (org_project_useful_interface_skeleton_get_type ()) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeleton)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 787s # #define ORG_PROJECT_USEFUL_INTERFACE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonClass)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 787s # #define IS_ORG_PROJECT_USEFUL_INTERFACE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON)) 787s # 787s # typedef struct _OrgProjectUsefulInterfaceSkeleton OrgProjectUsefulInterfaceSkeleton; 787s # typedef struct _OrgProjectUsefulInterfaceSkeletonClass OrgProjectUsefulInterfaceSkeletonClass; 787s # typedef struct _OrgProjectUsefulInterfaceSkeletonPrivate OrgProjectUsefulInterfaceSkeletonPrivate; 787s # 787s # struct _OrgProjectUsefulInterfaceSkeleton 787s # { 787s # /*< private >*/ 787s # GDBusInterfaceSkeleton parent_instance; 787s # OrgProjectUsefulInterfaceSkeletonPrivate *priv; 787s # }; 787s # 787s # struct _OrgProjectUsefulInterfaceSkeletonClass 787s # { 787s # GDBusInterfaceSkeletonClass parent_class; 787s # }; 787s # 787s # GType org_project_useful_interface_skeleton_get_type (void) G_GNUC_CONST; 787s # 787s # #if GLIB_CHECK_VERSION(2, 44, 0) 787s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectUsefulInterfaceSkeleton, g_object_unref) 787s # #endif 787s # 787s # OrgProjectUsefulInterface *org_project_useful_interface_skeleton_new (void); 787s # 787s # 787s # G_END_DECLS 787s # 787s # #endif /* __STDOUT__ */ 787s # Error: 788s ok 2 __main__.TestCodegen.test_dbus_types 788s # gdbus-codegen: /usr/bin/gdbus-codegen 788s # tmpdir: /tmp/tmpjwkfhjb3 788s # /tmp/tmpjwkfhjb3/tmp4qyxopvu.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmp4qyxopvu.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "{vs}". "v" is not a valid type for dictionary keys at position 1. 788s # /tmp/tmpjwkfhjb3/tmpcgev2sbc.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmpcgev2sbc.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "(ss(s{{sv}s}))". "{" is not a valid type for dictionary keys at position 6. 788s # /tmp/tmpjwkfhjb3/tmpd1muaag0.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmpd1muaag0.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "{s". Error parsing string or brackets not closed. 788s # /tmp/tmpjwkfhjb3/tmp5sqsc_3r.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmp5sqsc_3r.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "(s{sss})". Dict must end with "}" at position 5. 788s # /tmp/tmpjwkfhjb3/tmp8t4fbtri.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmp8t4fbtri.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "z". "z" is not a valid D-Bus type. 788s # /tmp/tmpjwkfhjb3/tmpq4c7gogx.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmpq4c7gogx.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "(ssms)". "m" is not a valid D-Bus type. 788s # /tmp/tmpjwkfhjb3/tmpwg9u0tcp.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmpwg9u0tcp.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "(". Error parsing string or brackets not closed. 788s # /tmp/tmpjwkfhjb3/tmpewk_c6a4.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmpewk_c6a4.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "(((ss))". Error parsing string or brackets not closed. 788s # /tmp/tmpjwkfhjb3/tmpidq38ox2.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmpidq38ox2.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas". Too much recursion beginning at 129. 788s # /tmp/tmpjwkfhjb3/tmpccv15saw.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmpccv15saw.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: D-Bus maximum signature length of 255 exceeded. 788s # /tmp/tmpjwkfhjb3/tmp_xm9yui9.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmp_xm9yui9.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: D-Bus maximum signature length of 255 exceeded. 788s # /tmp/tmpjwkfhjb3/tmppx700ra5.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmppx700ra5.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: Bad signature "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(aaaaaa{sv})". Too much recursion beginning at 129. 788s # /tmp/tmpjwkfhjb3/tmpfhqlaq4i.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmpfhqlaq4i.xml', '--output', '-', '--body'] 788s # Return code: 1 788s # Output: 788s # 788s # Error: 788s # ERROR: D-Bus maximum signature length of 255 exceeded. 788s # /tmp/tmpjwkfhjb3/tmpljhp815a.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmpljhp815a.xml', '--output', '-', '--body'] 788s # Return code: 0 788s # Output: 788s # /* 788s # * This file is generated by gdbus-codegen, do not modify it. 788s # * 788s # * The license of this code is the same as for the D-Bus interface description 788s # * it was derived from. Note that it links to GLib, so must comply with the 788s # * LGPL linking clauses. 788s # */ 788s # 788s # #ifdef HAVE_CONFIG_H 788s # # include "config.h" 788s # #endif 788s # 788s # #include 788s # #ifdef G_OS_UNIX 788s # # include 788s # #endif 788s # 788s # #ifdef G_ENABLE_DEBUG 788s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 788s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 788s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 788s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 788s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 788s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 788s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 788s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 788s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 788s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 788s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 788s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 788s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 788s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 788s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 788s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 788s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 788s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 788s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 788s # #else /* !G_ENABLE_DEBUG */ 788s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 788s # * Do not access GValues directly in your code. Instead, use the 788s # * g_value_get_*() functions 788s # */ 788s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 788s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 788s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 788s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 788s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 788s # #endif /* !G_ENABLE_DEBUG */ 788s # 788s # typedef struct 788s # { 788s # GDBusArgInfo parent_struct; 788s # gboolean use_gvariant; 788s # } _ExtendedGDBusArgInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusMethodInfo parent_struct; 788s # const gchar *signal_name; 788s # gboolean pass_fdlist; 788s # } _ExtendedGDBusMethodInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusSignalInfo parent_struct; 788s # const gchar *signal_name; 788s # } _ExtendedGDBusSignalInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusPropertyInfo parent_struct; 788s # const gchar *hyphen_name; 788s # guint use_gvariant : 1; 788s # guint emits_changed_signal : 1; 788s # } _ExtendedGDBusPropertyInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusInterfaceInfo parent_struct; 788s # const gchar *hyphen_name; 788s # } _ExtendedGDBusInterfaceInfo; 788s # 788s # typedef struct 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # guint prop_id; 788s # GValue orig_value; /* the value before the change */ 788s # } ChangedProperty; 788s # 788s # static void 788s # _changed_property_free (ChangedProperty *data) 788s # { 788s # g_value_unset (&data->orig_value); 788s # g_free (data); 788s # } 788s # 788s # static gboolean 788s # _g_strv_equal0 (gchar **a, gchar **b) 788s # { 788s # gboolean ret = FALSE; 788s # guint n; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # if (g_strv_length (a) != g_strv_length (b)) 788s # goto out; 788s # for (n = 0; a[n] != NULL; n++) 788s # if (g_strcmp0 (a[n], b[n]) != 0) 788s # goto out; 788s # ret = TRUE; 788s # out: 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _g_variant_equal0 (GVariant *a, GVariant *b) 788s # { 788s # gboolean ret = FALSE; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # ret = g_variant_equal (a, b); 788s # out: 788s # return ret; 788s # } 788s # 788s # G_GNUC_UNUSED static gboolean 788s # _g_value_equal (const GValue *a, const GValue *b) 788s # { 788s # gboolean ret = FALSE; 788s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 788s # switch (G_VALUE_TYPE (a)) 788s # { 788s # case G_TYPE_BOOLEAN: 788s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 788s # break; 788s # case G_TYPE_UCHAR: 788s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 788s # break; 788s # case G_TYPE_INT: 788s # ret = (g_value_get_int (a) == g_value_get_int (b)); 788s # break; 788s # case G_TYPE_UINT: 788s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 788s # break; 788s # case G_TYPE_INT64: 788s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 788s # break; 788s # case G_TYPE_UINT64: 788s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 788s # break; 788s # case G_TYPE_DOUBLE: 788s # { 788s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 788s # gdouble da = g_value_get_double (a); 788s # gdouble db = g_value_get_double (b); 788s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 788s # } 788s # break; 788s # case G_TYPE_STRING: 788s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 788s # break; 788s # case G_TYPE_VARIANT: 788s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 788s # break; 788s # default: 788s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 788s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 788s # else 788s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 788s # break; 788s # } 788s # return ret; 788s # } 788s # 788s # /* ------------------------------------------------------------------------ 788s # * Code for interface GoodTypes 788s # * ------------------------------------------------------------------------ 788s # */ 788s # 788s # /** 788s # * SECTION:GoodTypes 788s # * @title: GoodTypes 788s # * @short_description: Generated C code for the GoodTypes D-Bus interface 788s # * 788s # * This section contains code for working with the GoodTypes D-Bus interface in C. 788s # */ 788s # 788s # /* ---- Introspection data for GoodTypes ---- */ 788s # 788s # static const _ExtendedGDBusPropertyInfo _good_types_property_info_good_property_type = 788s # { 788s # { 788s # -1, 788s # (gchar *) "GoodPropertyType", 788s # (gchar *) "si{s{b(ybnqiuxtdh)}}{yv}{nv}{dv}", 788s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 788s # NULL 788s # }, 788s # "good-property-type", 788s # FALSE, 788s # TRUE 788s # }; 788s # 788s # static const GDBusPropertyInfo * const _good_types_property_info_pointers[] = 788s # { 788s # &_good_types_property_info_good_property_type.parent_struct, 788s # NULL 788s # }; 788s # 788s # static const _ExtendedGDBusInterfaceInfo _good_types_interface_info = 788s # { 788s # { 788s # -1, 788s # (gchar *) "GoodTypes", 788s # NULL, 788s # NULL, 788s # (GDBusPropertyInfo **) &_good_types_property_info_pointers, 788s # NULL 788s # }, 788s # "good-types", 788s # }; 788s # 788s # 788s # /** 788s # * good_types_interface_info: 788s # * 788s # * Gets a machine-readable description of the GoodTypes D-Bus interface. 788s # * 788s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 788s # */ 788s # GDBusInterfaceInfo * 788s # good_types_interface_info (void) 788s # { 788s # return (GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct; 788s # } 788s # 788s # /** 788s # * good_types_override_properties: 788s # * @klass: The class structure for a #GObject derived class. 788s # * @property_id_begin: The property id to assign to the first overridden property. 788s # * 788s # * Overrides all #GObject properties in the GoodTypes interface for a concrete class. 788s # * The properties are overridden in the order they are defined. 788s # * 788s # * Returns: The last property id. 788s # */ 788s # guint 788s # good_types_override_properties (GObjectClass *klass, guint property_id_begin) 788s # { 788s # g_object_class_override_property (klass, property_id_begin++, "good-property-type"); 788s # return property_id_begin - 1; 788s # } 788s # 788s # 788s # 788s # /** 788s # * GoodTypes: 788s # * 788s # * Abstract interface type for the D-Bus interface GoodTypes. 788s # */ 788s # 788s # /** 788s # * GoodTypesIface: 788s # * @parent_iface: The parent interface. 788s # * @get_good_property_type: Getter for the #GoodTypes:good-property-type property. 788s # * 788s # * Virtual table for the D-Bus interface GoodTypes. 788s # */ 788s # 788s # typedef GoodTypesIface GoodTypesInterface; 788s # G_DEFINE_INTERFACE (GoodTypes, good_types, G_TYPE_OBJECT) 788s # 788s # static void 788s # good_types_default_init (GoodTypesIface *iface) 788s # { 788s # /* GObject properties for D-Bus properties: */ 788s # /** 788s # * GoodTypes:good-property-type: 788s # * 788s # * Represents the D-Bus property "GoodPropertyType". 788s # * 788s # * 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. 788s # */ 788s # g_object_interface_install_property (iface, 788s # 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)); 788s # } 788s # 788s # /** 788s # * good_types_get_good_property_type: (skip) 788s # * @object: A GoodTypes. 788s # * 788s # * Gets the value of the "GoodPropertyType" D-Bus property. 788s # * 788s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 788s # * 788s # * 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. 788s # * 788s # * 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. 788s # */ 788s # GVariant * 788s # good_types_get_good_property_type (GoodTypes *object) 788s # { 788s # g_return_val_if_fail (IS_GOOD_TYPES (object), NULL); 788s # 788s # return GOOD_TYPES_GET_IFACE (object)->get_good_property_type (object); 788s # } 788s # 788s # /** 788s # * good_types_dup_good_property_type: (skip) 788s # * @object: A GoodTypes. 788s # * 788s # * Gets a copy of the "GoodPropertyType" D-Bus property. 788s # * 788s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 788s # * 788s # * 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(). 788s # */ 788s # GVariant * 788s # good_types_dup_good_property_type (GoodTypes *object) 788s # { 788s # GVariant *value; 788s # g_object_get (G_OBJECT (object), "good-property-type", &value, NULL); 788s # return value; 788s # } 788s # 788s # /** 788s # * good_types_set_good_property_type: (skip) 788s # * @object: A GoodTypes. 788s # * @value: The value to set. 788s # * 788s # * Sets the "GoodPropertyType" D-Bus property to @value. 788s # * 788s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 788s # */ 788s # void 788s # good_types_set_good_property_type (GoodTypes *object, GVariant *value) 788s # { 788s # g_object_set (G_OBJECT (object), "good-property-type", value, NULL); 788s # } 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * GoodTypesProxy: 788s # * 788s # * The GoodTypesProxy structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * GoodTypesProxyClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for GoodTypesProxy. 788s # */ 788s # 788s # struct _GoodTypesProxyPrivate 788s # { 788s # GData *qdata; 788s # }; 788s # 788s # static void good_types_proxy_iface_init (GoodTypesIface *iface); 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 788s # G_ADD_PRIVATE (GoodTypesProxy) 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 788s # 788s # #endif 788s # static void 788s # good_types_proxy_finalize (GObject *object) 788s # { 788s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 788s # g_datalist_clear (&proxy->priv->qdata); 788s # G_OBJECT_CLASS (good_types_proxy_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # good_types_proxy_get_property (GObject *object, 788s # guint prop_id, 788s # GValue *value, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # GVariant *variant; 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 788s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 788s # if (info->use_gvariant) 788s # { 788s # g_value_set_variant (value, variant); 788s # } 788s # else 788s # { 788s # if (variant != NULL) 788s # g_dbus_gvariant_to_gvalue (variant, value); 788s # } 788s # if (variant != NULL) 788s # g_variant_unref (variant); 788s # } 788s # 788s # static void 788s # good_types_proxy_set_property_cb (GDBusProxy *proxy, 788s # GAsyncResult *res, 788s # gpointer user_data) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info = user_data; 788s # GError *error; 788s # GVariant *_ret; 788s # error = NULL; 788s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 788s # if (!_ret) 788s # { 788s # g_warning ("Error setting property '%s' on interface GoodTypes: %s (%s, %d)", 788s # info->parent_struct.name, 788s # error->message, g_quark_to_string (error->domain), error->code); 788s # g_error_free (error); 788s # } 788s # else 788s # { 788s # g_variant_unref (_ret); 788s # } 788s # } 788s # 788s # static void 788s # good_types_proxy_set_property (GObject *object, 788s # guint prop_id, 788s # const GValue *value, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # GVariant *variant; 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 788s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 788s # g_dbus_proxy_call (G_DBUS_PROXY (object), 788s # "org.freedesktop.DBus.Properties.Set", 788s # g_variant_new ("(ssv)", "GoodTypes", info->parent_struct.name, variant), 788s # G_DBUS_CALL_FLAGS_NONE, 788s # -1, 788s # NULL, (GAsyncReadyCallback) good_types_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 788s # g_variant_unref (variant); 788s # } 788s # 788s # static void 788s # good_types_proxy_g_signal (GDBusProxy *proxy, 788s # const gchar *sender_name G_GNUC_UNUSED, 788s # const gchar *signal_name, 788s # GVariant *parameters) 788s # { 788s # _ExtendedGDBusSignalInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # gsize n; 788s # guint signal_id; 788s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, signal_name); 788s # if (info == NULL) 788s # return; 788s # num_params = g_variant_n_children (parameters); 788s # paramv = g_new0 (GValue, num_params + 1); 788s # g_value_init (¶mv[0], TYPE_GOOD_TYPES); 788s # g_value_set_object (¶mv[0], proxy); 788s # g_variant_iter_init (&iter, parameters); 788s # n = 1; 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 788s # g_signal_emitv (paramv, signal_id, 0, NULL); 788s # for (n = 0; n < num_params + 1; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static void 788s # good_types_proxy_g_properties_changed (GDBusProxy *_proxy, 788s # GVariant *changed_properties, 788s # const gchar *const *invalidated_properties) 788s # { 788s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (_proxy); 788s # guint n; 788s # const gchar *key; 788s # GVariantIter *iter; 788s # _ExtendedGDBusPropertyInfo *info; 788s # g_variant_get (changed_properties, "a{sv}", &iter); 788s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, key); 788s # g_datalist_remove_data (&proxy->priv->qdata, key); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # g_variant_iter_free (iter); 788s # for (n = 0; invalidated_properties[n] != NULL; n++) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, invalidated_properties[n]); 788s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # } 788s # 788s # static GVariant * 788s # good_types_proxy_get_good_property_type (GoodTypes *object) 788s # { 788s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 788s # GVariant *variant; 788s # GVariant *value = NULL; 788s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "GoodPropertyType"); 788s # value = variant; 788s # if (variant != NULL) 788s # g_variant_unref (variant); 788s # return value; 788s # } 788s # 788s # static void 788s # good_types_proxy_init (GoodTypesProxy *proxy) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # proxy->priv = good_types_proxy_get_instance_private (proxy); 788s # #else 788s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_GOOD_TYPES_PROXY, GoodTypesProxyPrivate); 788s # #endif 788s # 788s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), good_types_interface_info ()); 788s # } 788s # 788s # static void 788s # good_types_proxy_class_init (GoodTypesProxyClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusProxyClass *proxy_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = good_types_proxy_finalize; 788s # gobject_class->get_property = good_types_proxy_get_property; 788s # gobject_class->set_property = good_types_proxy_set_property; 788s # 788s # proxy_class = G_DBUS_PROXY_CLASS (klass); 788s # proxy_class->g_signal = good_types_proxy_g_signal; 788s # proxy_class->g_properties_changed = good_types_proxy_g_properties_changed; 788s # 788s # good_types_override_properties (gobject_class, 1); 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (GoodTypesProxyPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # good_types_proxy_iface_init (GoodTypesIface *iface) 788s # { 788s # iface->get_good_property_type = good_types_proxy_get_good_property_type; 788s # } 788s # 788s # /** 788s # * good_types_proxy_new: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Asynchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new() for more details. 788s # * 788s # * 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()). 788s # * You can then call good_types_proxy_new_finish() to get the result of the operation. 788s # * 788s # * See good_types_proxy_new_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # good_types_proxy_new ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with good_types_proxy_new(). 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_sync: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Synchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new_sync() for more details. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See good_types_proxy_new() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_sync ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /** 788s # * good_types_proxy_new_for_bus: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Like good_types_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * 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()). 788s # * You can then call good_types_proxy_new_for_bus_finish() to get the result of the operation. 788s # * 788s # * See good_types_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # good_types_proxy_new_for_bus ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_for_bus_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new_for_bus(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with good_types_proxy_new_for_bus(). 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_for_bus_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_for_bus_sync: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Like good_types_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See good_types_proxy_new_for_bus() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_for_bus_sync ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * GoodTypesSkeleton: 788s # * 788s # * The GoodTypesSkeleton structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * GoodTypesSkeletonClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for GoodTypesSkeleton. 788s # */ 788s # 788s # struct _GoodTypesSkeletonPrivate 788s # { 788s # GValue *properties; 788s # GList *changed_properties; 788s # GSource *changed_properties_idle_source; 788s # GMainContext *context; 788s # GMutex lock; 788s # }; 788s # 788s # static void 788s # _good_types_skeleton_handle_method_call ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name, 788s # const gchar *method_name, 788s # GVariant *parameters, 788s # GDBusMethodInvocation *invocation, 788s # gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # _ExtendedGDBusMethodInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # guint num_extra; 788s # gsize n; 788s # guint signal_id; 788s # GValue return_value = G_VALUE_INIT; 788s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 788s # g_assert (info != NULL); 788s # num_params = g_variant_n_children (parameters); 788s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 788s # n = 0; 788s # g_value_init (¶mv[n], TYPE_GOOD_TYPES); 788s # g_value_set_object (¶mv[n++], skeleton); 788s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 788s # g_value_set_object (¶mv[n++], invocation); 788s # if (info->pass_fdlist) 788s # { 788s # #ifdef G_OS_UNIX 788s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 788s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 788s # #else 788s # g_assert_not_reached (); 788s # #endif 788s # } 788s # g_variant_iter_init (&iter, parameters); 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 788s # g_value_init (&return_value, G_TYPE_BOOLEAN); 788s # g_signal_emitv (paramv, signal_id, 0, &return_value); 788s # if (!g_value_get_boolean (&return_value)) 788s # 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); 788s # g_value_unset (&return_value); 788s # for (n = 0; n < num_params + num_extra; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static GVariant * 788s # _good_types_skeleton_handle_get_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # GVariant *ret; 788s # ret = NULL; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # g_value_init (&value, pspec->value_type); 788s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 788s # g_value_unset (&value); 788s # } 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _good_types_skeleton_handle_set_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GVariant *variant, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # gboolean ret; 788s # ret = FALSE; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # if (info->use_gvariant) 788s # g_value_set_variant (&value, variant); 788s # else 788s # g_dbus_gvariant_to_gvalue (variant, &value); 788s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # g_value_unset (&value); 788s # ret = TRUE; 788s # } 788s # return ret; 788s # } 788s # 788s # static const GDBusInterfaceVTable _good_types_skeleton_vtable = 788s # { 788s # _good_types_skeleton_handle_method_call, 788s # _good_types_skeleton_handle_get_property, 788s # _good_types_skeleton_handle_set_property, 788s # {NULL} 788s # }; 788s # 788s # static GDBusInterfaceInfo * 788s # good_types_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return good_types_interface_info (); 788s # } 788s # 788s # static GDBusInterfaceVTable * 788s # good_types_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return (GDBusInterfaceVTable *) &_good_types_skeleton_vtable; 788s # } 788s # 788s # static GVariant * 788s # good_types_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 788s # 788s # GVariantBuilder builder; 788s # guint n; 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 788s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #else 788s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #endif 788s # if (_good_types_interface_info.parent_struct.properties == NULL) 788s # goto out; 788s # for (n = 0; _good_types_interface_info.parent_struct.properties[n] != NULL; n++) 788s # { 788s # GDBusPropertyInfo *info = _good_types_interface_info.parent_struct.properties[n]; 788s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 788s # { 788s # GVariant *value; 788s # 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); 788s # if (value != NULL) 788s # { 788s # g_variant_take_ref (value); 788s # g_variant_builder_add (&builder, "{sv}", info->name, value); 788s # g_variant_unref (value); 788s # } 788s # } 788s # } 788s # out: 788s # return g_variant_builder_end (&builder); 788s # } 788s # 788s # static gboolean _good_types_emit_changed (gpointer user_data); 788s # 788s # static void 788s # good_types_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 788s # gboolean emit_changed = FALSE; 788s # 788s # g_mutex_lock (&skeleton->priv->lock); 788s # if (skeleton->priv->changed_properties_idle_source != NULL) 788s # { 788s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 788s # skeleton->priv->changed_properties_idle_source = NULL; 788s # emit_changed = TRUE; 788s # } 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # 788s # if (emit_changed) 788s # _good_types_emit_changed (skeleton); 788s # } 788s # 788s # static void good_types_skeleton_iface_init (GoodTypesIface *iface); 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_ADD_PRIVATE (GoodTypesSkeleton) 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 788s # 788s # #endif 788s # static void 788s # good_types_skeleton_finalize (GObject *object) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # guint n; 788s # for (n = 0; n < 1; n++) 788s # g_value_unset (&skeleton->priv->properties[n]); 788s # g_free (skeleton->priv->properties); 788s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 788s # if (skeleton->priv->changed_properties_idle_source != NULL) 788s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 788s # g_main_context_unref (skeleton->priv->context); 788s # g_mutex_clear (&skeleton->priv->lock); 788s # G_OBJECT_CLASS (good_types_skeleton_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # good_types_skeleton_get_property (GObject *object, 788s # guint prop_id, 788s # GValue *value, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # g_mutex_lock (&skeleton->priv->lock); 788s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # } 788s # 788s # static gboolean 788s # _good_types_emit_changed (gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # GList *l; 788s # GVariantBuilder builder; 788s # GVariantBuilder invalidated_builder; 788s # guint num_changes; 788s # 788s # g_mutex_lock (&skeleton->priv->lock); 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 788s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 788s # #else 788s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 788s # #endif 788s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 788s # { 788s # ChangedProperty *cp = l->data; 788s # GVariant *variant; 788s # const GValue *cur_value; 788s # 788s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 788s # if (!_g_value_equal (cur_value, &cp->orig_value)) 788s # { 788s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 788s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 788s # g_variant_unref (variant); 788s # num_changes++; 788s # } 788s # } 788s # if (num_changes > 0) 788s # { 788s # GList *connections, *ll; 788s # GVariant *signal_variant; 788s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "GoodTypes", 788s # &builder, &invalidated_builder)); 788s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 788s # for (ll = connections; ll != NULL; ll = ll->next) 788s # { 788s # GDBusConnection *connection = ll->data; 788s # 788s # g_dbus_connection_emit_signal (connection, 788s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 788s # "org.freedesktop.DBus.Properties", 788s # "PropertiesChanged", 788s # signal_variant, 788s # NULL); 788s # } 788s # g_variant_unref (signal_variant); 788s # g_list_free_full (connections, g_object_unref); 788s # } 788s # else 788s # { 788s # g_variant_builder_clear (&builder); 788s # g_variant_builder_clear (&invalidated_builder); 788s # } 788s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 788s # skeleton->priv->changed_properties = NULL; 788s # skeleton->priv->changed_properties_idle_source = NULL; 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # return FALSE; 788s # } 788s # 788s # static void 788s # _good_types_schedule_emit_changed (GoodTypesSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 788s # { 788s # ChangedProperty *cp; 788s # GList *l; 788s # cp = NULL; 788s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 788s # { 788s # ChangedProperty *i_cp = l->data; 788s # if (i_cp->info == info) 788s # { 788s # cp = i_cp; 788s # break; 788s # } 788s # } 788s # if (cp == NULL) 788s # { 788s # cp = g_new0 (ChangedProperty, 1); 788s # cp->prop_id = prop_id; 788s # cp->info = info; 788s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 788s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 788s # g_value_copy (orig_value, &cp->orig_value); 788s # } 788s # } 788s # 788s # static void 788s # good_types_skeleton_notify (GObject *object, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # g_mutex_lock (&skeleton->priv->lock); 788s # if (skeleton->priv->changed_properties != NULL && 788s # skeleton->priv->changed_properties_idle_source == NULL) 788s # { 788s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 788s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 788s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _good_types_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 788s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _good_types_emit_changed"); 788s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 788s # g_source_unref (skeleton->priv->changed_properties_idle_source); 788s # } 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # } 788s # 788s # static void 788s # good_types_skeleton_set_property (GObject *object, 788s # guint prop_id, 788s # const GValue *value, 788s # GParamSpec *pspec) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 788s # g_mutex_lock (&skeleton->priv->lock); 788s # g_object_freeze_notify (object); 788s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 788s # { 788s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 788s # info->emits_changed_signal) 788s # _good_types_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 788s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 788s # g_object_notify_by_pspec (object, pspec); 788s # } 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # g_object_thaw_notify (object); 788s # } 788s # 788s # static void 788s # good_types_skeleton_init (GoodTypesSkeleton *skeleton) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # skeleton->priv = good_types_skeleton_get_instance_private (skeleton); 788s # #else 788s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_GOOD_TYPES_SKELETON, GoodTypesSkeletonPrivate); 788s # #endif 788s # 788s # g_mutex_init (&skeleton->priv->lock); 788s # skeleton->priv->context = g_main_context_ref_thread_default (); 788s # skeleton->priv->properties = g_new0 (GValue, 1); 788s # g_value_init (&skeleton->priv->properties[0], G_TYPE_VARIANT); 788s # } 788s # 788s # static GVariant * 788s # good_types_skeleton_get_good_property_type (GoodTypes *object) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # GVariant *value; 788s # g_mutex_lock (&skeleton->priv->lock); 788s # value = g_marshal_value_peek_variant (&(skeleton->priv->properties[0])); 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # return value; 788s # } 788s # 788s # static void 788s # good_types_skeleton_class_init (GoodTypesSkeletonClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusInterfaceSkeletonClass *skeleton_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = good_types_skeleton_finalize; 788s # gobject_class->get_property = good_types_skeleton_get_property; 788s # gobject_class->set_property = good_types_skeleton_set_property; 788s # gobject_class->notify = good_types_skeleton_notify; 788s # 788s # 788s # good_types_override_properties (gobject_class, 1); 788s # 788s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 788s # skeleton_class->get_info = good_types_skeleton_dbus_interface_get_info; 788s # skeleton_class->get_properties = good_types_skeleton_dbus_interface_get_properties; 788s # skeleton_class->flush = good_types_skeleton_dbus_interface_flush; 788s # skeleton_class->get_vtable = good_types_skeleton_dbus_interface_get_vtable; 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (GoodTypesSkeletonPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # good_types_skeleton_iface_init (GoodTypesIface *iface) 788s # { 788s # iface->get_good_property_type = good_types_skeleton_get_good_property_type; 788s # } 788s # 788s # /** 788s # * good_types_skeleton_new: 788s # * 788s # * Creates a skeleton object for the D-Bus interface GoodTypes. 788s # * 788s # * Returns: (transfer full) (type GoodTypesSkeleton): The skeleton object. 788s # */ 788s # GoodTypes * 788s # good_types_skeleton_new (void) 788s # { 788s # return GOOD_TYPES (g_object_new (TYPE_GOOD_TYPES_SKELETON, NULL)); 788s # } 788s # Error: 788s # 788s # /tmp/tmpjwkfhjb3/tmppa6q2kk4.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmppa6q2kk4.xml', '--output', '-', '--body'] 788s # Return code: 0 788s # Output: 788s # /* 788s # * This file is generated by gdbus-codegen, do not modify it. 788s # * 788s # * The license of this code is the same as for the D-Bus interface description 788s # * it was derived from. Note that it links to GLib, so must comply with the 788s # * LGPL linking clauses. 788s # */ 788s # 788s # #ifdef HAVE_CONFIG_H 788s # # include "config.h" 788s # #endif 788s # 788s # #include 788s # #ifdef G_OS_UNIX 788s # # include 788s # #endif 788s # 788s # #ifdef G_ENABLE_DEBUG 788s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 788s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 788s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 788s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 788s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 788s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 788s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 788s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 788s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 788s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 788s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 788s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 788s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 788s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 788s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 788s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 788s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 788s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 788s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 788s # #else /* !G_ENABLE_DEBUG */ 788s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 788s # * Do not access GValues directly in your code. Instead, use the 788s # * g_value_get_*() functions 788s # */ 788s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 788s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 788s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 788s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 788s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 788s # #endif /* !G_ENABLE_DEBUG */ 788s # 788s # typedef struct 788s # { 788s # GDBusArgInfo parent_struct; 788s # gboolean use_gvariant; 788s # } _ExtendedGDBusArgInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusMethodInfo parent_struct; 788s # const gchar *signal_name; 788s # gboolean pass_fdlist; 788s # } _ExtendedGDBusMethodInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusSignalInfo parent_struct; 788s # const gchar *signal_name; 788s # } _ExtendedGDBusSignalInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusPropertyInfo parent_struct; 788s # const gchar *hyphen_name; 788s # guint use_gvariant : 1; 788s # guint emits_changed_signal : 1; 788s # } _ExtendedGDBusPropertyInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusInterfaceInfo parent_struct; 788s # const gchar *hyphen_name; 788s # } _ExtendedGDBusInterfaceInfo; 788s # 788s # typedef struct 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # guint prop_id; 788s # GValue orig_value; /* the value before the change */ 788s # } ChangedProperty; 788s # 788s # static void 788s # _changed_property_free (ChangedProperty *data) 788s # { 788s # g_value_unset (&data->orig_value); 788s # g_free (data); 788s # } 788s # 788s # static gboolean 788s # _g_strv_equal0 (gchar **a, gchar **b) 788s # { 788s # gboolean ret = FALSE; 788s # guint n; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # if (g_strv_length (a) != g_strv_length (b)) 788s # goto out; 788s # for (n = 0; a[n] != NULL; n++) 788s # if (g_strcmp0 (a[n], b[n]) != 0) 788s # goto out; 788s # ret = TRUE; 788s # out: 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _g_variant_equal0 (GVariant *a, GVariant *b) 788s # { 788s # gboolean ret = FALSE; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # ret = g_variant_equal (a, b); 788s # out: 788s # return ret; 788s # } 788s # 788s # G_GNUC_UNUSED static gboolean 788s # _g_value_equal (const GValue *a, const GValue *b) 788s # { 788s # gboolean ret = FALSE; 788s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 788s # switch (G_VALUE_TYPE (a)) 788s # { 788s # case G_TYPE_BOOLEAN: 788s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 788s # break; 788s # case G_TYPE_UCHAR: 788s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 788s # break; 788s # case G_TYPE_INT: 788s # ret = (g_value_get_int (a) == g_value_get_int (b)); 788s # break; 788s # case G_TYPE_UINT: 788s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 788s # break; 788s # case G_TYPE_INT64: 788s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 788s # break; 788s # case G_TYPE_UINT64: 788s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 788s # break; 788s # case G_TYPE_DOUBLE: 788s # { 788s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 788s # gdouble da = g_value_get_double (a); 788s # gdouble db = g_value_get_double (b); 788s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 788s # } 788s # break; 788s # case G_TYPE_STRING: 788s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 788s # break; 788s # case G_TYPE_VARIANT: 788s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 788s # break; 788s # default: 788s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 788s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 788s # else 788s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 788s # break; 788s # } 788s # return ret; 788s # } 788s # 788s # /* ------------------------------------------------------------------------ 788s # * Code for interface GoodTypes 788s # * ------------------------------------------------------------------------ 788s # */ 788s # 788s # /** 788s # * SECTION:GoodTypes 788s # * @title: GoodTypes 788s # * @short_description: Generated C code for the GoodTypes D-Bus interface 788s # * 788s # * This section contains code for working with the GoodTypes D-Bus interface in C. 788s # */ 788s # 788s # /* ---- Introspection data for GoodTypes ---- */ 788s # 788s # static const _ExtendedGDBusPropertyInfo _good_types_property_info_good_property_type = 788s # { 788s # { 788s # -1, 788s # (gchar *) "GoodPropertyType", 788s # (gchar *) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas", 788s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 788s # NULL 788s # }, 788s # "good-property-type", 788s # FALSE, 788s # TRUE 788s # }; 788s # 788s # static const GDBusPropertyInfo * const _good_types_property_info_pointers[] = 788s # { 788s # &_good_types_property_info_good_property_type.parent_struct, 788s # NULL 788s # }; 788s # 788s # static const _ExtendedGDBusInterfaceInfo _good_types_interface_info = 788s # { 788s # { 788s # -1, 788s # (gchar *) "GoodTypes", 788s # NULL, 788s # NULL, 788s # (GDBusPropertyInfo **) &_good_types_property_info_pointers, 788s # NULL 788s # }, 788s # "good-types", 788s # }; 788s # 788s # 788s # /** 788s # * good_types_interface_info: 788s # * 788s # * Gets a machine-readable description of the GoodTypes D-Bus interface. 788s # * 788s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 788s # */ 788s # GDBusInterfaceInfo * 788s # good_types_interface_info (void) 788s # { 788s # return (GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct; 788s # } 788s # 788s # /** 788s # * good_types_override_properties: 788s # * @klass: The class structure for a #GObject derived class. 788s # * @property_id_begin: The property id to assign to the first overridden property. 788s # * 788s # * Overrides all #GObject properties in the GoodTypes interface for a concrete class. 788s # * The properties are overridden in the order they are defined. 788s # * 788s # * Returns: The last property id. 788s # */ 788s # guint 788s # good_types_override_properties (GObjectClass *klass, guint property_id_begin) 788s # { 788s # g_object_class_override_property (klass, property_id_begin++, "good-property-type"); 788s # return property_id_begin - 1; 788s # } 788s # 788s # 788s # 788s # /** 788s # * GoodTypes: 788s # * 788s # * Abstract interface type for the D-Bus interface GoodTypes. 788s # */ 788s # 788s # /** 788s # * GoodTypesIface: 788s # * @parent_iface: The parent interface. 788s # * @get_good_property_type: Getter for the #GoodTypes:good-property-type property. 788s # * 788s # * Virtual table for the D-Bus interface GoodTypes. 788s # */ 788s # 788s # typedef GoodTypesIface GoodTypesInterface; 788s # G_DEFINE_INTERFACE (GoodTypes, good_types, G_TYPE_OBJECT) 788s # 788s # static void 788s # good_types_default_init (GoodTypesIface *iface) 788s # { 788s # /* GObject properties for D-Bus properties: */ 788s # /** 788s # * GoodTypes:good-property-type: 788s # * 788s # * Represents the D-Bus property "GoodPropertyType". 788s # * 788s # * 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. 788s # */ 788s # g_object_interface_install_property (iface, 788s # g_param_spec_variant ("good-property-type", "GoodPropertyType", "GoodPropertyType", G_VARIANT_TYPE ("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas"), NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); 788s # } 788s # 788s # /** 788s # * good_types_get_good_property_type: (skip) 788s # * @object: A GoodTypes. 788s # * 788s # * Gets the value of the "GoodPropertyType" D-Bus property. 788s # * 788s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 788s # * 788s # * 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. 788s # * 788s # * 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. 788s # */ 788s # GVariant * 788s # good_types_get_good_property_type (GoodTypes *object) 788s # { 788s # g_return_val_if_fail (IS_GOOD_TYPES (object), NULL); 788s # 788s # return GOOD_TYPES_GET_IFACE (object)->get_good_property_type (object); 788s # } 788s # 788s # /** 788s # * good_types_dup_good_property_type: (skip) 788s # * @object: A GoodTypes. 788s # * 788s # * Gets a copy of the "GoodPropertyType" D-Bus property. 788s # * 788s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 788s # * 788s # * 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(). 788s # */ 788s # GVariant * 788s # good_types_dup_good_property_type (GoodTypes *object) 788s # { 788s # GVariant *value; 788s # g_object_get (G_OBJECT (object), "good-property-type", &value, NULL); 788s # return value; 788s # } 788s # 788s # /** 788s # * good_types_set_good_property_type: (skip) 788s # * @object: A GoodTypes. 788s # * @value: The value to set. 788s # * 788s # * Sets the "GoodPropertyType" D-Bus property to @value. 788s # * 788s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 788s # */ 788s # void 788s # good_types_set_good_property_type (GoodTypes *object, GVariant *value) 788s # { 788s # g_object_set (G_OBJECT (object), "good-property-type", value, NULL); 788s # } 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * GoodTypesProxy: 788s # * 788s # * The GoodTypesProxy structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * GoodTypesProxyClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for GoodTypesProxy. 788s # */ 788s # 788s # struct _GoodTypesProxyPrivate 788s # { 788s # GData *qdata; 788s # }; 788s # 788s # static void good_types_proxy_iface_init (GoodTypesIface *iface); 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 788s # G_ADD_PRIVATE (GoodTypesProxy) 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 788s # 788s # #endif 788s # static void 788s # good_types_proxy_finalize (GObject *object) 788s # { 788s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 788s # g_datalist_clear (&proxy->priv->qdata); 788s # G_OBJECT_CLASS (good_types_proxy_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # good_types_proxy_get_property (GObject *object, 788s # guint prop_id, 788s # GValue *value, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # GVariant *variant; 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 788s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 788s # if (info->use_gvariant) 788s # { 788s # g_value_set_variant (value, variant); 788s # } 788s # else 788s # { 788s # if (variant != NULL) 788s # g_dbus_gvariant_to_gvalue (variant, value); 788s # } 788s # if (variant != NULL) 788s # g_variant_unref (variant); 788s # } 788s # 788s # static void 788s # good_types_proxy_set_property_cb (GDBusProxy *proxy, 788s # GAsyncResult *res, 788s # gpointer user_data) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info = user_data; 788s # GError *error; 788s # GVariant *_ret; 788s # error = NULL; 788s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 788s # if (!_ret) 788s # { 788s # g_warning ("Error setting property '%s' on interface GoodTypes: %s (%s, %d)", 788s # info->parent_struct.name, 788s # error->message, g_quark_to_string (error->domain), error->code); 788s # g_error_free (error); 788s # } 788s # else 788s # { 788s # g_variant_unref (_ret); 788s # } 788s # } 788s # 788s # static void 788s # good_types_proxy_set_property (GObject *object, 788s # guint prop_id, 788s # const GValue *value, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # GVariant *variant; 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 788s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 788s # g_dbus_proxy_call (G_DBUS_PROXY (object), 788s # "org.freedesktop.DBus.Properties.Set", 788s # g_variant_new ("(ssv)", "GoodTypes", info->parent_struct.name, variant), 788s # G_DBUS_CALL_FLAGS_NONE, 788s # -1, 788s # NULL, (GAsyncReadyCallback) good_types_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 788s # g_variant_unref (variant); 788s # } 788s # 788s # static void 788s # good_types_proxy_g_signal (GDBusProxy *proxy, 788s # const gchar *sender_name G_GNUC_UNUSED, 788s # const gchar *signal_name, 788s # GVariant *parameters) 788s # { 788s # _ExtendedGDBusSignalInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # gsize n; 788s # guint signal_id; 788s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, signal_name); 788s # if (info == NULL) 788s # return; 788s # num_params = g_variant_n_children (parameters); 788s # paramv = g_new0 (GValue, num_params + 1); 788s # g_value_init (¶mv[0], TYPE_GOOD_TYPES); 788s # g_value_set_object (¶mv[0], proxy); 788s # g_variant_iter_init (&iter, parameters); 788s # n = 1; 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 788s # g_signal_emitv (paramv, signal_id, 0, NULL); 788s # for (n = 0; n < num_params + 1; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static void 788s # good_types_proxy_g_properties_changed (GDBusProxy *_proxy, 788s # GVariant *changed_properties, 788s # const gchar *const *invalidated_properties) 788s # { 788s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (_proxy); 788s # guint n; 788s # const gchar *key; 788s # GVariantIter *iter; 788s # _ExtendedGDBusPropertyInfo *info; 788s # g_variant_get (changed_properties, "a{sv}", &iter); 788s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, key); 788s # g_datalist_remove_data (&proxy->priv->qdata, key); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # g_variant_iter_free (iter); 788s # for (n = 0; invalidated_properties[n] != NULL; n++) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, invalidated_properties[n]); 788s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # } 788s # 788s # static GVariant * 788s # good_types_proxy_get_good_property_type (GoodTypes *object) 788s # { 788s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 788s # GVariant *variant; 788s # GVariant *value = NULL; 788s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "GoodPropertyType"); 788s # value = variant; 788s # if (variant != NULL) 788s # g_variant_unref (variant); 788s # return value; 788s # } 788s # 788s # static void 788s # good_types_proxy_init (GoodTypesProxy *proxy) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # proxy->priv = good_types_proxy_get_instance_private (proxy); 788s # #else 788s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_GOOD_TYPES_PROXY, GoodTypesProxyPrivate); 788s # #endif 788s # 788s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), good_types_interface_info ()); 788s # } 788s # 788s # static void 788s # good_types_proxy_class_init (GoodTypesProxyClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusProxyClass *proxy_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = good_types_proxy_finalize; 788s # gobject_class->get_property = good_types_proxy_get_property; 788s # gobject_class->set_property = good_types_proxy_set_property; 788s # 788s # proxy_class = G_DBUS_PROXY_CLASS (klass); 788s # proxy_class->g_signal = good_types_proxy_g_signal; 788s # proxy_class->g_properties_changed = good_types_proxy_g_properties_changed; 788s # 788s # good_types_override_properties (gobject_class, 1); 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (GoodTypesProxyPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # good_types_proxy_iface_init (GoodTypesIface *iface) 788s # { 788s # iface->get_good_property_type = good_types_proxy_get_good_property_type; 788s # } 788s # 788s # /** 788s # * good_types_proxy_new: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Asynchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new() for more details. 788s # * 788s # * 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()). 788s # * You can then call good_types_proxy_new_finish() to get the result of the operation. 788s # * 788s # * See good_types_proxy_new_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # good_types_proxy_new ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with good_types_proxy_new(). 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_sync: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Synchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new_sync() for more details. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See good_types_proxy_new() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_sync ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /** 788s # * good_types_proxy_new_for_bus: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Like good_types_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * 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()). 788s # * You can then call good_types_proxy_new_for_bus_finish() to get the result of the operation. 788s # * 788s # * See good_types_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # good_types_proxy_new_for_bus ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_for_bus_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new_for_bus(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with good_types_proxy_new_for_bus(). 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_for_bus_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_for_bus_sync: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Like good_types_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See good_types_proxy_new_for_bus() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_for_bus_sync ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * GoodTypesSkeleton: 788s # * 788s # * The GoodTypesSkeleton structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * GoodTypesSkeletonClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for GoodTypesSkeleton. 788s # */ 788s # 788s # struct _GoodTypesSkeletonPrivate 788s # { 788s # GValue *properties; 788s # GList *changed_properties; 788s # GSource *changed_properties_idle_source; 788s # GMainContext *context; 788s # GMutex lock; 788s # }; 788s # 788s # static void 788s # _good_types_skeleton_handle_method_call ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name, 788s # const gchar *method_name, 788s # GVariant *parameters, 788s # GDBusMethodInvocation *invocation, 788s # gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # _ExtendedGDBusMethodInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # guint num_extra; 788s # gsize n; 788s # guint signal_id; 788s # GValue return_value = G_VALUE_INIT; 788s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 788s # g_assert (info != NULL); 788s # num_params = g_variant_n_children (parameters); 788s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 788s # n = 0; 788s # g_value_init (¶mv[n], TYPE_GOOD_TYPES); 788s # g_value_set_object (¶mv[n++], skeleton); 788s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 788s # g_value_set_object (¶mv[n++], invocation); 788s # if (info->pass_fdlist) 788s # { 788s # #ifdef G_OS_UNIX 788s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 788s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 788s # #else 788s # g_assert_not_reached (); 788s # #endif 788s # } 788s # g_variant_iter_init (&iter, parameters); 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 788s # g_value_init (&return_value, G_TYPE_BOOLEAN); 788s # g_signal_emitv (paramv, signal_id, 0, &return_value); 788s # if (!g_value_get_boolean (&return_value)) 788s # 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); 788s # g_value_unset (&return_value); 788s # for (n = 0; n < num_params + num_extra; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static GVariant * 788s # _good_types_skeleton_handle_get_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # GVariant *ret; 788s # ret = NULL; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # g_value_init (&value, pspec->value_type); 788s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 788s # g_value_unset (&value); 788s # } 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _good_types_skeleton_handle_set_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GVariant *variant, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # gboolean ret; 788s # ret = FALSE; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # if (info->use_gvariant) 788s # g_value_set_variant (&value, variant); 788s # else 788s # g_dbus_gvariant_to_gvalue (variant, &value); 788s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # g_value_unset (&value); 788s # ret = TRUE; 788s # } 788s # return ret; 788s # } 788s # 788s # static const GDBusInterfaceVTable _good_types_skeleton_vtable = 788s # { 788s # _good_types_skeleton_handle_method_call, 788s # _good_types_skeleton_handle_get_property, 788s # _good_types_skeleton_handle_set_property, 788s # {NULL} 788s # }; 788s # 788s # static GDBusInterfaceInfo * 788s # good_types_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return good_types_interface_info (); 788s # } 788s # 788s # static GDBusInterfaceVTable * 788s # good_types_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return (GDBusInterfaceVTable *) &_good_types_skeleton_vtable; 788s # } 788s # 788s # static GVariant * 788s # good_types_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 788s # 788s # GVariantBuilder builder; 788s # guint n; 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 788s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #else 788s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #endif 788s # if (_good_types_interface_info.parent_struct.properties == NULL) 788s # goto out; 788s # for (n = 0; _good_types_interface_info.parent_struct.properties[n] != NULL; n++) 788s # { 788s # GDBusPropertyInfo *info = _good_types_interface_info.parent_struct.properties[n]; 788s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 788s # { 788s # GVariant *value; 788s # 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); 788s # if (value != NULL) 788s # { 788s # g_variant_take_ref (value); 788s # g_variant_builder_add (&builder, "{sv}", info->name, value); 788s # g_variant_unref (value); 788s # } 788s # } 788s # } 788s # out: 788s # return g_variant_builder_end (&builder); 788s # } 788s # 788s # static gboolean _good_types_emit_changed (gpointer user_data); 788s # 788s # static void 788s # good_types_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 788s # gboolean emit_changed = FALSE; 788s # 788s # g_mutex_lock (&skeleton->priv->lock); 788s # if (skeleton->priv->changed_properties_idle_source != NULL) 788s # { 788s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 788s # skeleton->priv->changed_properties_idle_source = NULL; 788s # emit_changed = TRUE; 788s # } 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # 788s # if (emit_changed) 788s # _good_types_emit_changed (skeleton); 788s # } 788s # 788s # static void good_types_skeleton_iface_init (GoodTypesIface *iface); 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_ADD_PRIVATE (GoodTypesSkeleton) 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 788s # 788s # #endif 788s # static void 788s # good_types_skeleton_finalize (GObject *object) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # guint n; 788s # for (n = 0; n < 1; n++) 788s # g_value_unset (&skeleton->priv->properties[n]); 788s # g_free (skeleton->priv->properties); 788s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 788s # if (skeleton->priv->changed_properties_idle_source != NULL) 788s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 788s # g_main_context_unref (skeleton->priv->context); 788s # g_mutex_clear (&skeleton->priv->lock); 788s # G_OBJECT_CLASS (good_types_skeleton_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # good_types_skeleton_get_property (GObject *object, 788s # guint prop_id, 788s # GValue *value, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # g_mutex_lock (&skeleton->priv->lock); 788s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # } 788s # 788s # static gboolean 788s # _good_types_emit_changed (gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # GList *l; 788s # GVariantBuilder builder; 788s # GVariantBuilder invalidated_builder; 788s # guint num_changes; 788s # 788s # g_mutex_lock (&skeleton->priv->lock); 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 788s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 788s # #else 788s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 788s # #endif 788s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 788s # { 788s # ChangedProperty *cp = l->data; 788s # GVariant *variant; 788s # const GValue *cur_value; 788s # 788s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 788s # if (!_g_value_equal (cur_value, &cp->orig_value)) 788s # { 788s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 788s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 788s # g_variant_unref (variant); 788s # num_changes++; 788s # } 788s # } 788s # if (num_changes > 0) 788s # { 788s # GList *connections, *ll; 788s # GVariant *signal_variant; 788s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "GoodTypes", 788s # &builder, &invalidated_builder)); 788s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 788s # for (ll = connections; ll != NULL; ll = ll->next) 788s # { 788s # GDBusConnection *connection = ll->data; 788s # 788s # g_dbus_connection_emit_signal (connection, 788s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 788s # "org.freedesktop.DBus.Properties", 788s # "PropertiesChanged", 788s # signal_variant, 788s # NULL); 788s # } 788s # g_variant_unref (signal_variant); 788s # g_list_free_full (connections, g_object_unref); 788s # } 788s # else 788s # { 788s # g_variant_builder_clear (&builder); 788s # g_variant_builder_clear (&invalidated_builder); 788s # } 788s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 788s # skeleton->priv->changed_properties = NULL; 788s # skeleton->priv->changed_properties_idle_source = NULL; 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # return FALSE; 788s # } 788s # 788s # static void 788s # _good_types_schedule_emit_changed (GoodTypesSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 788s # { 788s # ChangedProperty *cp; 788s # GList *l; 788s # cp = NULL; 788s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 788s # { 788s # ChangedProperty *i_cp = l->data; 788s # if (i_cp->info == info) 788s # { 788s # cp = i_cp; 788s # break; 788s # } 788s # } 788s # if (cp == NULL) 788s # { 788s # cp = g_new0 (ChangedProperty, 1); 788s # cp->prop_id = prop_id; 788s # cp->info = info; 788s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 788s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 788s # g_value_copy (orig_value, &cp->orig_value); 788s # } 788s # } 788s # 788s # static void 788s # good_types_skeleton_notify (GObject *object, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # g_mutex_lock (&skeleton->priv->lock); 788s # if (skeleton->priv->changed_properties != NULL && 788s # skeleton->priv->changed_properties_idle_source == NULL) 788s # { 788s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 788s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 788s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _good_types_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 788s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _good_types_emit_changed"); 788s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 788s # g_source_unref (skeleton->priv->changed_properties_idle_source); 788s # } 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # } 788s # 788s # static void 788s # good_types_skeleton_set_property (GObject *object, 788s # guint prop_id, 788s # const GValue *value, 788s # GParamSpec *pspec) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 788s # g_mutex_lock (&skeleton->priv->lock); 788s # g_object_freeze_notify (object); 788s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 788s # { 788s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 788s # info->emits_changed_signal) 788s # _good_types_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 788s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 788s # g_object_notify_by_pspec (object, pspec); 788s # } 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # g_object_thaw_notify (object); 788s # } 788s # 788s # static void 788s # good_types_skeleton_init (GoodTypesSkeleton *skeleton) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # skeleton->priv = good_types_skeleton_get_instance_private (skeleton); 788s # #else 788s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_GOOD_TYPES_SKELETON, GoodTypesSkeletonPrivate); 788s # #endif 788s # 788s # g_mutex_init (&skeleton->priv->lock); 788s # skeleton->priv->context = g_main_context_ref_thread_default (); 788s # skeleton->priv->properties = g_new0 (GValue, 1); 788s # g_value_init (&skeleton->priv->properties[0], G_TYPE_VARIANT); 788s # } 788s # 788s # static GVariant * 788s # good_types_skeleton_get_good_property_type (GoodTypes *object) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # GVariant *value; 788s # g_mutex_lock (&skeleton->priv->lock); 788s # value = g_marshal_value_peek_variant (&(skeleton->priv->properties[0])); 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # return value; 788s # } 788s # 788s # static void 788s # good_types_skeleton_class_init (GoodTypesSkeletonClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusInterfaceSkeletonClass *skeleton_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = good_types_skeleton_finalize; 788s # gobject_class->get_property = good_types_skeleton_get_property; 788s # gobject_class->set_property = good_types_skeleton_set_property; 788s # gobject_class->notify = good_types_skeleton_notify; 788s # 788s # 788s # good_types_override_properties (gobject_class, 1); 788s # 788s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 788s # skeleton_class->get_info = good_types_skeleton_dbus_interface_get_info; 788s # skeleton_class->get_properties = good_types_skeleton_dbus_interface_get_properties; 788s # skeleton_class->flush = good_types_skeleton_dbus_interface_flush; 788s # skeleton_class->get_vtable = good_types_skeleton_dbus_interface_get_vtable; 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (GoodTypesSkeletonPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # good_types_skeleton_iface_init (GoodTypesIface *iface) 788s # { 788s # iface->get_good_property_type = good_types_skeleton_get_good_property_type; 788s # } 788s # 788s # /** 788s # * good_types_skeleton_new: 788s # * 788s # * Creates a skeleton object for the D-Bus interface GoodTypes. 788s # * 788s # * Returns: (transfer full) (type GoodTypesSkeleton): The skeleton object. 788s # */ 788s # GoodTypes * 788s # good_types_skeleton_new (void) 788s # { 788s # return GOOD_TYPES (g_object_new (TYPE_GOOD_TYPES_SKELETON, NULL)); 788s # } 788s # Error: 788s # 788s # /tmp/tmpjwkfhjb3/tmprhzfa7h_.xml: 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjwkfhjb3/tmprhzfa7h_.xml', '--output', '-', '--body'] 788s # Return code: 0 788s # Output: 788s # /* 788s # * This file is generated by gdbus-codegen, do not modify it. 788s # * 788s # * The license of this code is the same as for the D-Bus interface description 788s # * it was derived from. Note that it links to GLib, so must comply with the 788s # * LGPL linking clauses. 788s # */ 788s # 788s # #ifdef HAVE_CONFIG_H 788s # # include "config.h" 788s # #endif 788s # 788s # #include 788s # #ifdef G_OS_UNIX 788s # # include 788s # #endif 788s # 788s # #ifdef G_ENABLE_DEBUG 788s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 788s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 788s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 788s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 788s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 788s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 788s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 788s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 788s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 788s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 788s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 788s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 788s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 788s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 788s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 788s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 788s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 788s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 788s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 788s # #else /* !G_ENABLE_DEBUG */ 788s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 788s # * Do not access GValues directly in your code. Instead, use the 788s # * g_value_get_*() functions 788s # */ 788s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 788s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 788s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 788s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 788s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 788s # #endif /* !G_ENABLE_DEBUG */ 788s # 788s # typedef struct 788s # { 788s # GDBusArgInfo parent_struct; 788s # gboolean use_gvariant; 788s # } _ExtendedGDBusArgInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusMethodInfo parent_struct; 788s # const gchar *signal_name; 788s # gboolean pass_fdlist; 788s # } _ExtendedGDBusMethodInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusSignalInfo parent_struct; 788s # const gchar *signal_name; 788s # } _ExtendedGDBusSignalInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusPropertyInfo parent_struct; 788s # const gchar *hyphen_name; 788s # guint use_gvariant : 1; 788s # guint emits_changed_signal : 1; 788s # } _ExtendedGDBusPropertyInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusInterfaceInfo parent_struct; 788s # const gchar *hyphen_name; 788s # } _ExtendedGDBusInterfaceInfo; 788s # 788s # typedef struct 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # guint prop_id; 788s # GValue orig_value; /* the value before the change */ 788s # } ChangedProperty; 788s # 788s # static void 788s # _changed_property_free (ChangedProperty *data) 788s # { 788s # g_value_unset (&data->orig_value); 788s # g_free (data); 788s # } 788s # 788s # static gboolean 788s # _g_strv_equal0 (gchar **a, gchar **b) 788s # { 788s # gboolean ret = FALSE; 788s # guint n; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # if (g_strv_length (a) != g_strv_length (b)) 788s # goto out; 788s # for (n = 0; a[n] != NULL; n++) 788s # if (g_strcmp0 (a[n], b[n]) != 0) 788s # goto out; 788s # ret = TRUE; 788s # out: 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _g_variant_equal0 (GVariant *a, GVariant *b) 788s # { 788s # gboolean ret = FALSE; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # ret = g_variant_equal (a, b); 788s # out: 788s # return ret; 788s # } 788s # 788s # G_GNUC_UNUSED static gboolean 788s # _g_value_equal (const GValue *a, const GValue *b) 788s # { 788s # gboolean ret = FALSE; 788s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 788s # switch (G_VALUE_TYPE (a)) 788s # { 788s # case G_TYPE_BOOLEAN: 788s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 788s # break; 788s # case G_TYPE_UCHAR: 788s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 788s # break; 788s # case G_TYPE_INT: 788s # ret = (g_value_get_int (a) == g_value_get_int (b)); 788s # break; 788s # case G_TYPE_UINT: 788s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 788s # break; 788s # case G_TYPE_INT64: 788s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 788s # break; 788s # case G_TYPE_UINT64: 788s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 788s # break; 788s # case G_TYPE_DOUBLE: 788s # { 788s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 788s # gdouble da = g_value_get_double (a); 788s # gdouble db = g_value_get_double (b); 788s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 788s # } 788s # break; 788s # case G_TYPE_STRING: 788s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 788s # break; 788s # case G_TYPE_VARIANT: 788s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 788s # break; 788s # default: 788s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 788s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 788s # else 788s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 788s # break; 788s # } 788s # return ret; 788s # } 788s # 788s # /* ------------------------------------------------------------------------ 788s # * Code for interface GoodTypes 788s # * ------------------------------------------------------------------------ 788s # */ 788s # 788s # /** 788s # * SECTION:GoodTypes 788s # * @title: GoodTypes 788s # * @short_description: Generated C code for the GoodTypes D-Bus interface 788s # * 788s # * This section contains code for working with the GoodTypes D-Bus interface in C. 788s # */ 788s # 788s # /* ---- Introspection data for GoodTypes ---- */ 788s # 788s # static const _ExtendedGDBusPropertyInfo _good_types_property_info_good_property_type = 788s # { 788s # { 788s # -1, 788s # (gchar *) "GoodPropertyType", 788s # (gchar *) "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaa{sv})", 788s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 788s # NULL 788s # }, 788s # "good-property-type", 788s # FALSE, 788s # TRUE 788s # }; 788s # 788s # static const GDBusPropertyInfo * const _good_types_property_info_pointers[] = 788s # { 788s # &_good_types_property_info_good_property_type.parent_struct, 788s # NULL 788s # }; 788s # 788s # static const _ExtendedGDBusInterfaceInfo _good_types_interface_info = 788s # { 788s # { 788s # -1, 788s # (gchar *) "GoodTypes", 788s # NULL, 788s # NULL, 788s # (GDBusPropertyInfo **) &_good_types_property_info_pointers, 788s # NULL 788s # }, 788s # "good-types", 788s # }; 788s # 788s # 788s # /** 788s # * good_types_interface_info: 788s # * 788s # * Gets a machine-readable description of the GoodTypes D-Bus interface. 788s # * 788s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 788s # */ 788s # GDBusInterfaceInfo * 788s # good_types_interface_info (void) 788s # { 788s # return (GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct; 788s # } 788s # 788s # /** 788s # * good_types_override_properties: 788s # * @klass: The class structure for a #GObject derived class. 788s # * @property_id_begin: The property id to assign to the first overridden property. 788s # * 788s # * Overrides all #GObject properties in the GoodTypes interface for a concrete class. 788s # * The properties are overridden in the order they are defined. 788s # * 788s # * Returns: The last property id. 788s # */ 788s # guint 788s # good_types_override_properties (GObjectClass *klass, guint property_id_begin) 788s # { 788s # g_object_class_override_property (klass, property_id_begin++, "good-property-type"); 788s # return property_id_begin - 1; 788s # } 788s # 788s # 788s # 788s # /** 788s # * GoodTypes: 788s # * 788s # * Abstract interface type for the D-Bus interface GoodTypes. 788s # */ 788s # 788s # /** 788s # * GoodTypesIface: 788s # * @parent_iface: The parent interface. 788s # * @get_good_property_type: Getter for the #GoodTypes:good-property-type property. 788s # * 788s # * Virtual table for the D-Bus interface GoodTypes. 788s # */ 788s # 788s # typedef GoodTypesIface GoodTypesInterface; 788s # G_DEFINE_INTERFACE (GoodTypes, good_types, G_TYPE_OBJECT) 788s # 788s # static void 788s # good_types_default_init (GoodTypesIface *iface) 788s # { 788s # /* GObject properties for D-Bus properties: */ 788s # /** 788s # * GoodTypes:good-property-type: 788s # * 788s # * Represents the D-Bus property "GoodPropertyType". 788s # * 788s # * 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. 788s # */ 788s # g_object_interface_install_property (iface, 788s # g_param_spec_variant ("good-property-type", "GoodPropertyType", "GoodPropertyType", G_VARIANT_TYPE ("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaa{sv})"), NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); 788s # } 788s # 788s # /** 788s # * good_types_get_good_property_type: (skip) 788s # * @object: A GoodTypes. 788s # * 788s # * Gets the value of the "GoodPropertyType" D-Bus property. 788s # * 788s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 788s # * 788s # * 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. 788s # * 788s # * 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. 788s # */ 788s # GVariant * 788s # good_types_get_good_property_type (GoodTypes *object) 788s # { 788s # g_return_val_if_fail (IS_GOOD_TYPES (object), NULL); 788s # 788s # return GOOD_TYPES_GET_IFACE (object)->get_good_property_type (object); 788s # } 788s # 788s # /** 788s # * good_types_dup_good_property_type: (skip) 788s # * @object: A GoodTypes. 788s # * 788s # * Gets a copy of the "GoodPropertyType" D-Bus property. 788s # * 788s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 788s # * 788s # * 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(). 788s # */ 788s # GVariant * 788s # good_types_dup_good_property_type (GoodTypes *object) 788s # { 788s # GVariant *value; 788s # g_object_get (G_OBJECT (object), "good-property-type", &value, NULL); 788s # return value; 788s # } 788s # 788s # /** 788s # * good_types_set_good_property_type: (skip) 788s # * @object: A GoodTypes. 788s # * @value: The value to set. 788s # * 788s # * Sets the "GoodPropertyType" D-Bus property to @value. 788s # * 788s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 788s # */ 788s # void 788s # good_types_set_good_property_type (GoodTypes *object, GVariant *value) 788s # { 788s # g_object_set (G_OBJECT (object), "good-property-type", value, NULL); 788s # } 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * GoodTypesProxy: 788s # * 788s # * The GoodTypesProxy structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * GoodTypesProxyClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for GoodTypesProxy. 788s # */ 788s # 788s # struct _GoodTypesProxyPrivate 788s # { 788s # GData *qdata; 788s # }; 788s # 788s # static void good_types_proxy_iface_init (GoodTypesIface *iface); 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 788s # G_ADD_PRIVATE (GoodTypesProxy) 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesProxy, good_types_proxy, G_TYPE_DBUS_PROXY, 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_proxy_iface_init)) 788s # 788s # #endif 788s # static void 788s # good_types_proxy_finalize (GObject *object) 788s # { 788s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 788s # g_datalist_clear (&proxy->priv->qdata); 788s # G_OBJECT_CLASS (good_types_proxy_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # good_types_proxy_get_property (GObject *object, 788s # guint prop_id, 788s # GValue *value, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # GVariant *variant; 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 788s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 788s # if (info->use_gvariant) 788s # { 788s # g_value_set_variant (value, variant); 788s # } 788s # else 788s # { 788s # if (variant != NULL) 788s # g_dbus_gvariant_to_gvalue (variant, value); 788s # } 788s # if (variant != NULL) 788s # g_variant_unref (variant); 788s # } 788s # 788s # static void 788s # good_types_proxy_set_property_cb (GDBusProxy *proxy, 788s # GAsyncResult *res, 788s # gpointer user_data) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info = user_data; 788s # GError *error; 788s # GVariant *_ret; 788s # error = NULL; 788s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 788s # if (!_ret) 788s # { 788s # g_warning ("Error setting property '%s' on interface GoodTypes: %s (%s, %d)", 788s # info->parent_struct.name, 788s # error->message, g_quark_to_string (error->domain), error->code); 788s # g_error_free (error); 788s # } 788s # else 788s # { 788s # g_variant_unref (_ret); 788s # } 788s # } 788s # 788s # static void 788s # good_types_proxy_set_property (GObject *object, 788s # guint prop_id, 788s # const GValue *value, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # GVariant *variant; 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 788s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 788s # g_dbus_proxy_call (G_DBUS_PROXY (object), 788s # "org.freedesktop.DBus.Properties.Set", 788s # g_variant_new ("(ssv)", "GoodTypes", info->parent_struct.name, variant), 788s # G_DBUS_CALL_FLAGS_NONE, 788s # -1, 788s # NULL, (GAsyncReadyCallback) good_types_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 788s # g_variant_unref (variant); 788s # } 788s # 788s # static void 788s # good_types_proxy_g_signal (GDBusProxy *proxy, 788s # const gchar *sender_name G_GNUC_UNUSED, 788s # const gchar *signal_name, 788s # GVariant *parameters) 788s # { 788s # _ExtendedGDBusSignalInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # gsize n; 788s # guint signal_id; 788s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, signal_name); 788s # if (info == NULL) 788s # return; 788s # num_params = g_variant_n_children (parameters); 788s # paramv = g_new0 (GValue, num_params + 1); 788s # g_value_init (¶mv[0], TYPE_GOOD_TYPES); 788s # g_value_set_object (¶mv[0], proxy); 788s # g_variant_iter_init (&iter, parameters); 788s # n = 1; 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 788s # g_signal_emitv (paramv, signal_id, 0, NULL); 788s # for (n = 0; n < num_params + 1; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static void 788s # good_types_proxy_g_properties_changed (GDBusProxy *_proxy, 788s # GVariant *changed_properties, 788s # const gchar *const *invalidated_properties) 788s # { 788s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (_proxy); 788s # guint n; 788s # const gchar *key; 788s # GVariantIter *iter; 788s # _ExtendedGDBusPropertyInfo *info; 788s # g_variant_get (changed_properties, "a{sv}", &iter); 788s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, key); 788s # g_datalist_remove_data (&proxy->priv->qdata, key); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # g_variant_iter_free (iter); 788s # for (n = 0; invalidated_properties[n] != NULL; n++) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, invalidated_properties[n]); 788s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # } 788s # 788s # static GVariant * 788s # good_types_proxy_get_good_property_type (GoodTypes *object) 788s # { 788s # GoodTypesProxy *proxy = GOOD_TYPES_PROXY (object); 788s # GVariant *variant; 788s # GVariant *value = NULL; 788s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "GoodPropertyType"); 788s # value = variant; 788s # if (variant != NULL) 788s # g_variant_unref (variant); 788s # return value; 788s # } 788s # 788s # static void 788s # good_types_proxy_init (GoodTypesProxy *proxy) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # proxy->priv = good_types_proxy_get_instance_private (proxy); 788s # #else 788s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_GOOD_TYPES_PROXY, GoodTypesProxyPrivate); 788s # #endif 788s # 788s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), good_types_interface_info ()); 788s # } 788s # 788s # static void 788s # good_types_proxy_class_init (GoodTypesProxyClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusProxyClass *proxy_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = good_types_proxy_finalize; 788s # gobject_class->get_property = good_types_proxy_get_property; 788s # gobject_class->set_property = good_types_proxy_set_property; 788s # 788s # proxy_class = G_DBUS_PROXY_CLASS (klass); 788s # proxy_class->g_signal = good_types_proxy_g_signal; 788s # proxy_class->g_properties_changed = good_types_proxy_g_properties_changed; 788s # 788s # good_types_override_properties (gobject_class, 1); 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (GoodTypesProxyPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # good_types_proxy_iface_init (GoodTypesIface *iface) 788s # { 788s # iface->get_good_property_type = good_types_proxy_get_good_property_type; 788s # } 788s # 788s # /** 788s # * good_types_proxy_new: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Asynchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new() for more details. 788s # * 788s # * 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()). 788s # * You can then call good_types_proxy_new_finish() to get the result of the operation. 788s # * 788s # * See good_types_proxy_new_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # good_types_proxy_new ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with good_types_proxy_new(). 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_sync: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Synchronously creates a proxy for the D-Bus interface GoodTypes. See g_dbus_proxy_new_sync() for more details. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See good_types_proxy_new() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_sync ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /** 788s # * good_types_proxy_new_for_bus: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Like good_types_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * 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()). 788s # * You can then call good_types_proxy_new_for_bus_finish() to get the result of the operation. 788s # * 788s # * See good_types_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # good_types_proxy_new_for_bus ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_for_bus_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to good_types_proxy_new_for_bus(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with good_types_proxy_new_for_bus(). 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_for_bus_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * good_types_proxy_new_for_bus_sync: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Like good_types_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See good_types_proxy_new_for_bus() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type GoodTypesProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # GoodTypes * 788s # good_types_proxy_new_for_bus_sync ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return GOOD_TYPES (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * GoodTypesSkeleton: 788s # * 788s # * The GoodTypesSkeleton structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * GoodTypesSkeletonClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for GoodTypesSkeleton. 788s # */ 788s # 788s # struct _GoodTypesSkeletonPrivate 788s # { 788s # GValue *properties; 788s # GList *changed_properties; 788s # GSource *changed_properties_idle_source; 788s # GMainContext *context; 788s # GMutex lock; 788s # }; 788s # 788s # static void 788s # _good_types_skeleton_handle_method_call ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name, 788s # const gchar *method_name, 788s # GVariant *parameters, 788s # GDBusMethodInvocation *invocation, 788s # gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # _ExtendedGDBusMethodInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # guint num_extra; 788s # gsize n; 788s # guint signal_id; 788s # GValue return_value = G_VALUE_INIT; 788s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 788s # g_assert (info != NULL); 788s # num_params = g_variant_n_children (parameters); 788s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 788s # n = 0; 788s # g_value_init (¶mv[n], TYPE_GOOD_TYPES); 788s # g_value_set_object (¶mv[n++], skeleton); 788s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 788s # g_value_set_object (¶mv[n++], invocation); 788s # if (info->pass_fdlist) 788s # { 788s # #ifdef G_OS_UNIX 788s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 788s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 788s # #else 788s # g_assert_not_reached (); 788s # #endif 788s # } 788s # g_variant_iter_init (&iter, parameters); 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_GOOD_TYPES); 788s # g_value_init (&return_value, G_TYPE_BOOLEAN); 788s # g_signal_emitv (paramv, signal_id, 0, &return_value); 788s # if (!g_value_get_boolean (&return_value)) 788s # 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); 788s # g_value_unset (&return_value); 788s # for (n = 0; n < num_params + num_extra; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static GVariant * 788s # _good_types_skeleton_handle_get_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # GVariant *ret; 788s # ret = NULL; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # g_value_init (&value, pspec->value_type); 788s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 788s # g_value_unset (&value); 788s # } 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _good_types_skeleton_handle_set_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GVariant *variant, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # gboolean ret; 788s # ret = FALSE; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_good_types_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # if (info->use_gvariant) 788s # g_value_set_variant (&value, variant); 788s # else 788s # g_dbus_gvariant_to_gvalue (variant, &value); 788s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # g_value_unset (&value); 788s # ret = TRUE; 788s # } 788s # return ret; 788s # } 788s # 788s # static const GDBusInterfaceVTable _good_types_skeleton_vtable = 788s # { 788s # _good_types_skeleton_handle_method_call, 788s # _good_types_skeleton_handle_get_property, 788s # _good_types_skeleton_handle_set_property, 788s # {NULL} 788s # }; 788s # 788s # static GDBusInterfaceInfo * 788s # good_types_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return good_types_interface_info (); 788s # } 788s # 788s # static GDBusInterfaceVTable * 788s # good_types_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return (GDBusInterfaceVTable *) &_good_types_skeleton_vtable; 788s # } 788s # 788s # static GVariant * 788s # good_types_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 788s # 788s # GVariantBuilder builder; 788s # guint n; 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 788s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #else 788s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #endif 788s # if (_good_types_interface_info.parent_struct.properties == NULL) 788s # goto out; 788s # for (n = 0; _good_types_interface_info.parent_struct.properties[n] != NULL; n++) 788s # { 788s # GDBusPropertyInfo *info = _good_types_interface_info.parent_struct.properties[n]; 788s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 788s # { 788s # GVariant *value; 788s # 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); 788s # if (value != NULL) 788s # { 788s # g_variant_take_ref (value); 788s # g_variant_builder_add (&builder, "{sv}", info->name, value); 788s # g_variant_unref (value); 788s # } 788s # } 788s # } 788s # out: 788s # return g_variant_builder_end (&builder); 788s # } 788s # 788s # static gboolean _good_types_emit_changed (gpointer user_data); 788s # 788s # static void 788s # good_types_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (_skeleton); 788s # gboolean emit_changed = FALSE; 788s # 788s # g_mutex_lock (&skeleton->priv->lock); 788s # if (skeleton->priv->changed_properties_idle_source != NULL) 788s # { 788s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 788s # skeleton->priv->changed_properties_idle_source = NULL; 788s # emit_changed = TRUE; 788s # } 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # 788s # if (emit_changed) 788s # _good_types_emit_changed (skeleton); 788s # } 788s # 788s # static void good_types_skeleton_iface_init (GoodTypesIface *iface); 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_ADD_PRIVATE (GoodTypesSkeleton) 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (GoodTypesSkeleton, good_types_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_IMPLEMENT_INTERFACE (TYPE_GOOD_TYPES, good_types_skeleton_iface_init)) 788s # 788s # #endif 788s # static void 788s # good_types_skeleton_finalize (GObject *object) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # guint n; 788s # for (n = 0; n < 1; n++) 788s # g_value_unset (&skeleton->priv->properties[n]); 788s # g_free (skeleton->priv->properties); 788s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 788s # if (skeleton->priv->changed_properties_idle_source != NULL) 788s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 788s # g_main_context_unref (skeleton->priv->context); 788s # g_mutex_clear (&skeleton->priv->lock); 788s # G_OBJECT_CLASS (good_types_skeleton_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # good_types_skeleton_get_property (GObject *object, 788s # guint prop_id, 788s # GValue *value, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # g_mutex_lock (&skeleton->priv->lock); 788s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # } 788s # 788s # static gboolean 788s # _good_types_emit_changed (gpointer user_data) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (user_data); 788s # GList *l; 788s # GVariantBuilder builder; 788s # GVariantBuilder invalidated_builder; 788s # guint num_changes; 788s # 788s # g_mutex_lock (&skeleton->priv->lock); 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 788s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 788s # #else 788s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 788s # #endif 788s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 788s # { 788s # ChangedProperty *cp = l->data; 788s # GVariant *variant; 788s # const GValue *cur_value; 788s # 788s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 788s # if (!_g_value_equal (cur_value, &cp->orig_value)) 788s # { 788s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 788s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 788s # g_variant_unref (variant); 788s # num_changes++; 788s # } 788s # } 788s # if (num_changes > 0) 788s # { 788s # GList *connections, *ll; 788s # GVariant *signal_variant; 788s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "GoodTypes", 788s # &builder, &invalidated_builder)); 788s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 788s # for (ll = connections; ll != NULL; ll = ll->next) 788s # { 788s # GDBusConnection *connection = ll->data; 788s # 788s # g_dbus_connection_emit_signal (connection, 788s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 788s # "org.freedesktop.DBus.Properties", 788s # "PropertiesChanged", 788s # signal_variant, 788s # NULL); 788s # } 788s # g_variant_unref (signal_variant); 788s # g_list_free_full (connections, g_object_unref); 788s # } 788s # else 788s # { 788s # g_variant_builder_clear (&builder); 788s # g_variant_builder_clear (&invalidated_builder); 788s # } 788s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 788s # skeleton->priv->changed_properties = NULL; 788s # skeleton->priv->changed_properties_idle_source = NULL; 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # return FALSE; 788s # } 788s # 788s # static void 788s # _good_types_schedule_emit_changed (GoodTypesSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 788s # { 788s # ChangedProperty *cp; 788s # GList *l; 788s # cp = NULL; 788s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 788s # { 788s # ChangedProperty *i_cp = l->data; 788s # if (i_cp->info == info) 788s # { 788s # cp = i_cp; 788s # break; 788s # } 788s # } 788s # if (cp == NULL) 788s # { 788s # cp = g_new0 (ChangedProperty, 1); 788s # cp->prop_id = prop_id; 788s # cp->info = info; 788s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 788s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 788s # g_value_copy (orig_value, &cp->orig_value); 788s # } 788s # } 788s # 788s # static void 788s # good_types_skeleton_notify (GObject *object, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # g_mutex_lock (&skeleton->priv->lock); 788s # if (skeleton->priv->changed_properties != NULL && 788s # skeleton->priv->changed_properties_idle_source == NULL) 788s # { 788s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 788s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 788s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _good_types_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 788s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _good_types_emit_changed"); 788s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 788s # g_source_unref (skeleton->priv->changed_properties_idle_source); 788s # } 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # } 788s # 788s # static void 788s # good_types_skeleton_set_property (GObject *object, 788s # guint prop_id, 788s # const GValue *value, 788s # GParamSpec *pspec) 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # g_assert (prop_id != 0 && prop_id - 1 < 1); 788s # info = (const _ExtendedGDBusPropertyInfo *) _good_types_property_info_pointers[prop_id - 1]; 788s # g_mutex_lock (&skeleton->priv->lock); 788s # g_object_freeze_notify (object); 788s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 788s # { 788s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 788s # info->emits_changed_signal) 788s # _good_types_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 788s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 788s # g_object_notify_by_pspec (object, pspec); 788s # } 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # g_object_thaw_notify (object); 788s # } 788s # 788s # static void 788s # good_types_skeleton_init (GoodTypesSkeleton *skeleton) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # skeleton->priv = good_types_skeleton_get_instance_private (skeleton); 788s # #else 788s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_GOOD_TYPES_SKELETON, GoodTypesSkeletonPrivate); 788s # #endif 788s # 788s # g_mutex_init (&skeleton->priv->lock); 788s # skeleton->priv->context = g_main_context_ref_thread_default (); 788s # skeleton->priv->properties = g_new0 (GValue, 1); 788s # g_value_init (&skeleton->priv->properties[0], G_TYPE_VARIANT); 788s # } 788s # 788s # static GVariant * 788s # good_types_skeleton_get_good_property_type (GoodTypes *object) 788s # { 788s # GoodTypesSkeleton *skeleton = GOOD_TYPES_SKELETON (object); 788s # GVariant *value; 788s # g_mutex_lock (&skeleton->priv->lock); 788s # value = g_marshal_value_peek_variant (&(skeleton->priv->properties[0])); 788s # g_mutex_unlock (&skeleton->priv->lock); 788s # return value; 788s # } 788s # 788s # static void 788s # good_types_skeleton_class_init (GoodTypesSkeletonClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusInterfaceSkeletonClass *skeleton_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = good_types_skeleton_finalize; 788s # gobject_class->get_property = good_types_skeleton_get_property; 788s # gobject_class->set_property = good_types_skeleton_set_property; 788s # gobject_class->notify = good_types_skeleton_notify; 788s # 788s # 788s # good_types_override_properties (gobject_class, 1); 788s # 788s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 788s # skeleton_class->get_info = good_types_skeleton_dbus_interface_get_info; 788s # skeleton_class->get_properties = good_types_skeleton_dbus_interface_get_properties; 788s # skeleton_class->flush = good_types_skeleton_dbus_interface_flush; 788s # skeleton_class->get_vtable = good_types_skeleton_dbus_interface_get_vtable; 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (GoodTypesSkeletonPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # good_types_skeleton_iface_init (GoodTypesIface *iface) 788s # { 788s # iface->get_good_property_type = good_types_skeleton_get_good_property_type; 788s # } 788s # 788s # /** 788s # * good_types_skeleton_new: 788s # * 788s # * Creates a skeleton object for the D-Bus interface GoodTypes. 788s # * 788s # * Returns: (transfer full) (type GoodTypesSkeleton): The skeleton object. 788s # */ 788s # GoodTypes * 788s # good_types_skeleton_new (void) 788s # { 788s # return GOOD_TYPES (g_object_new (TYPE_GOOD_TYPES_SKELETON, NULL)); 788s # } 788s # Error: 788s ok 3 __main__.TestCodegen.test_empty_interface_body 788s # gdbus-codegen: /usr/bin/gdbus-codegen 788s # tmpdir: /tmp/tmpesllfsgf 788s # /tmp/tmpesllfsgf/tmpj8l8oaco.xml: 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpesllfsgf/tmpj8l8oaco.xml', '--output', '-', '--body'] 788s # Return code: 0 788s # Output: 788s # /* 788s # * This file is generated by gdbus-codegen, do not modify it. 788s # * 788s # * The license of this code is the same as for the D-Bus interface description 788s # * it was derived from. Note that it links to GLib, so must comply with the 788s # * LGPL linking clauses. 788s # */ 788s # 788s # #ifdef HAVE_CONFIG_H 788s # # include "config.h" 788s # #endif 788s # 788s # #include 788s # #ifdef G_OS_UNIX 788s # # include 788s # #endif 788s # 788s # #ifdef G_ENABLE_DEBUG 788s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 788s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 788s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 788s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 788s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 788s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 788s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 788s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 788s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 788s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 788s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 788s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 788s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 788s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 788s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 788s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 788s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 788s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 788s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 788s # #else /* !G_ENABLE_DEBUG */ 788s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 788s # * Do not access GValues directly in your code. Instead, use the 788s # * g_value_get_*() functions 788s # */ 788s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 788s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 788s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 788s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 788s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 788s # #endif /* !G_ENABLE_DEBUG */ 788s # 788s # typedef struct 788s # { 788s # GDBusArgInfo parent_struct; 788s # gboolean use_gvariant; 788s # } _ExtendedGDBusArgInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusMethodInfo parent_struct; 788s # const gchar *signal_name; 788s # gboolean pass_fdlist; 788s # } _ExtendedGDBusMethodInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusSignalInfo parent_struct; 788s # const gchar *signal_name; 788s # } _ExtendedGDBusSignalInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusPropertyInfo parent_struct; 788s # const gchar *hyphen_name; 788s # guint use_gvariant : 1; 788s # guint emits_changed_signal : 1; 788s # } _ExtendedGDBusPropertyInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusInterfaceInfo parent_struct; 788s # const gchar *hyphen_name; 788s # } _ExtendedGDBusInterfaceInfo; 788s # 788s # typedef struct 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # guint prop_id; 788s # GValue orig_value; /* the value before the change */ 788s # } ChangedProperty; 788s # 788s # static void 788s # _changed_property_free (ChangedProperty *data) 788s # { 788s # g_value_unset (&data->orig_value); 788s # g_free (data); 788s # } 788s # 788s # static gboolean 788s # _g_strv_equal0 (gchar **a, gchar **b) 788s # { 788s # gboolean ret = FALSE; 788s # guint n; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # if (g_strv_length (a) != g_strv_length (b)) 788s # goto out; 788s # for (n = 0; a[n] != NULL; n++) 788s # if (g_strcmp0 (a[n], b[n]) != 0) 788s # goto out; 788s # ret = TRUE; 788s # out: 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _g_variant_equal0 (GVariant *a, GVariant *b) 788s # { 788s # gboolean ret = FALSE; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # ret = g_variant_equal (a, b); 788s # out: 788s # return ret; 788s # } 788s # 788s # G_GNUC_UNUSED static gboolean 788s # _g_value_equal (const GValue *a, const GValue *b) 788s # { 788s # gboolean ret = FALSE; 788s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 788s # switch (G_VALUE_TYPE (a)) 788s # { 788s # case G_TYPE_BOOLEAN: 788s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 788s # break; 788s # case G_TYPE_UCHAR: 788s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 788s # break; 788s # case G_TYPE_INT: 788s # ret = (g_value_get_int (a) == g_value_get_int (b)); 788s # break; 788s # case G_TYPE_UINT: 788s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 788s # break; 788s # case G_TYPE_INT64: 788s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 788s # break; 788s # case G_TYPE_UINT64: 788s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 788s # break; 788s # case G_TYPE_DOUBLE: 788s # { 788s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 788s # gdouble da = g_value_get_double (a); 788s # gdouble db = g_value_get_double (b); 788s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 788s # } 788s # break; 788s # case G_TYPE_STRING: 788s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 788s # break; 788s # case G_TYPE_VARIANT: 788s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 788s # break; 788s # default: 788s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 788s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 788s # else 788s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 788s # break; 788s # } 788s # return ret; 788s # } 788s # Error: 788s ok 4 __main__.TestCodegen.test_empty_interface_header 788s # gdbus-codegen: /usr/bin/gdbus-codegen 788s # tmpdir: /tmp/tmp6f69px4g 788s # /tmp/tmp6f69px4g/tmpovlxnrnv.xml: 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp6f69px4g/tmpovlxnrnv.xml', '--output', '-', '--header'] 788s # Return code: 0 788s # Output: 788s # /* 788s # * This file is generated by gdbus-codegen, do not modify it. 788s # * 788s # * The license of this code is the same as for the D-Bus interface description 788s # * it was derived from. Note that it links to GLib, so must comply with the 788s # * LGPL linking clauses. 788s # */ 788s # 788s # #ifndef __STDOUT__ 788s # #define __STDOUT__ 788s # 788s # #include 788s # 788s # G_BEGIN_DECLS 788s # 788s # 788s # G_END_DECLS 788s # 788s # #endif /* __STDOUT__ */ 788s # Error: 788s ok 5 __main__.TestCodegen.test_empty_interface_info_body 788s # gdbus-codegen: /usr/bin/gdbus-codegen 788s # tmpdir: /tmp/tmpsgl5alxz 788s # /tmp/tmpsgl5alxz/tmp5s9ve6ua.xml: 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpsgl5alxz/tmp5s9ve6ua.xml', '--output', '-', '--interface-info-body'] 788s # Return code: 0 788s # Output: 788s # /* 788s # * This file is generated by gdbus-codegen, do not modify it. 788s # * 788s # * The license of this code is the same as for the D-Bus interface description 788s # * it was derived from. Note that it links to GLib, so must comply with the 788s # * LGPL linking clauses. 788s # */ 788s # 788s # #ifdef HAVE_CONFIG_H 788s # # include "config.h" 788s # #endif 788s # 788s # #include 788s # Error: 788s ok 6 __main__.TestCodegen.test_empty_interface_info_header 788s # gdbus-codegen: /usr/bin/gdbus-codegen 788s # tmpdir: /tmp/tmpz80hwj72 788s # /tmp/tmpz80hwj72/tmpp_0lvseb.xml: 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpz80hwj72/tmpp_0lvseb.xml', '--output', '-', '--interface-info-header'] 788s # Return code: 0 788s # Output: 788s # /* 788s # * This file is generated by gdbus-codegen, do not modify it. 788s # * 788s # * The license of this code is the same as for the D-Bus interface description 788s # * it was derived from. Note that it links to GLib, so must comply with the 788s # * LGPL linking clauses. 788s # */ 788s # 788s # #ifndef __STDOUT__ 788s # #define __STDOUT__ 788s # 788s # #include 788s # 788s # G_BEGIN_DECLS 788s # 788s # 788s # G_END_DECLS 788s # 788s # #endif /* __STDOUT__ */ 788s # Error: 788s ok 7 __main__.TestCodegen.test_generate_docbook 788s # gdbus-codegen: /usr/bin/gdbus-codegen 788s # tmpdir: /tmp/tmpjpts36u9 788s # /tmp/tmpjpts36u9/tmptpsup0so.xml: 788s # 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjpts36u9/tmptpsup0so.xml', '--generate-docbook', 'test'] 788s # Return code: 0 788s # Output: 788s # 788s # Error: 788s ok 8 __main__.TestCodegen.test_generate_md 788s # gdbus-codegen: /usr/bin/gdbus-codegen 788s # tmpdir: /tmp/tmpcy6t0fpz 788s # /tmp/tmpcy6t0fpz/tmp47_1fjr2.xml: 788s # 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcy6t0fpz/tmp47_1fjr2.xml', '--generate-md', 'test'] 788s # Return code: 0 788s # Output: 788s # 788s # Error: 788s ok 9 __main__.TestCodegen.test_generate_methods_marshaller_simple_method 788s # gdbus-codegen: /usr/bin/gdbus-codegen 788s # tmpdir: /tmp/tmp88wwycmw 788s # /tmp/tmp88wwycmw/tmpicj8_t3v.xml: 788s # 788s # 788s # 788s # 788s # 788s # 788s # 788s # 788s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp88wwycmw/tmpicj8_t3v.xml', '--output', '-', '--body'] 788s # Return code: 0 788s # Output: 788s # /* 788s # * This file is generated by gdbus-codegen, do not modify it. 788s # * 788s # * The license of this code is the same as for the D-Bus interface description 788s # * it was derived from. Note that it links to GLib, so must comply with the 788s # * LGPL linking clauses. 788s # */ 788s # 788s # #ifdef HAVE_CONFIG_H 788s # # include "config.h" 788s # #endif 788s # 788s # #include 788s # #ifdef G_OS_UNIX 788s # # include 788s # #endif 788s # 788s # #ifdef G_ENABLE_DEBUG 788s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 788s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 788s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 788s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 788s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 788s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 788s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 788s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 788s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 788s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 788s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 788s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 788s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 788s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 788s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 788s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 788s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 788s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 788s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 788s # #else /* !G_ENABLE_DEBUG */ 788s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 788s # * Do not access GValues directly in your code. Instead, use the 788s # * g_value_get_*() functions 788s # */ 788s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 788s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 788s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 788s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 788s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 788s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 788s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 788s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 788s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 788s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 788s # #endif /* !G_ENABLE_DEBUG */ 788s # 788s # typedef struct 788s # { 788s # GDBusArgInfo parent_struct; 788s # gboolean use_gvariant; 788s # } _ExtendedGDBusArgInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusMethodInfo parent_struct; 788s # const gchar *signal_name; 788s # gboolean pass_fdlist; 788s # } _ExtendedGDBusMethodInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusSignalInfo parent_struct; 788s # const gchar *signal_name; 788s # } _ExtendedGDBusSignalInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusPropertyInfo parent_struct; 788s # const gchar *hyphen_name; 788s # guint use_gvariant : 1; 788s # guint emits_changed_signal : 1; 788s # } _ExtendedGDBusPropertyInfo; 788s # 788s # typedef struct 788s # { 788s # GDBusInterfaceInfo parent_struct; 788s # const gchar *hyphen_name; 788s # } _ExtendedGDBusInterfaceInfo; 788s # 788s # typedef struct 788s # { 788s # const _ExtendedGDBusPropertyInfo *info; 788s # guint prop_id; 788s # GValue orig_value; /* the value before the change */ 788s # } ChangedProperty; 788s # 788s # static void 788s # _changed_property_free (ChangedProperty *data) 788s # { 788s # g_value_unset (&data->orig_value); 788s # g_free (data); 788s # } 788s # 788s # static gboolean 788s # _g_strv_equal0 (gchar **a, gchar **b) 788s # { 788s # gboolean ret = FALSE; 788s # guint n; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # if (g_strv_length (a) != g_strv_length (b)) 788s # goto out; 788s # for (n = 0; a[n] != NULL; n++) 788s # if (g_strcmp0 (a[n], b[n]) != 0) 788s # goto out; 788s # ret = TRUE; 788s # out: 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _g_variant_equal0 (GVariant *a, GVariant *b) 788s # { 788s # gboolean ret = FALSE; 788s # if (a == NULL && b == NULL) 788s # { 788s # ret = TRUE; 788s # goto out; 788s # } 788s # if (a == NULL || b == NULL) 788s # goto out; 788s # ret = g_variant_equal (a, b); 788s # out: 788s # return ret; 788s # } 788s # 788s # G_GNUC_UNUSED static gboolean 788s # _g_value_equal (const GValue *a, const GValue *b) 788s # { 788s # gboolean ret = FALSE; 788s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 788s # switch (G_VALUE_TYPE (a)) 788s # { 788s # case G_TYPE_BOOLEAN: 788s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 788s # break; 788s # case G_TYPE_UCHAR: 788s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 788s # break; 788s # case G_TYPE_INT: 788s # ret = (g_value_get_int (a) == g_value_get_int (b)); 788s # break; 788s # case G_TYPE_UINT: 788s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 788s # break; 788s # case G_TYPE_INT64: 788s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 788s # break; 788s # case G_TYPE_UINT64: 788s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 788s # break; 788s # case G_TYPE_DOUBLE: 788s # { 788s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 788s # gdouble da = g_value_get_double (a); 788s # gdouble db = g_value_get_double (b); 788s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 788s # } 788s # break; 788s # case G_TYPE_STRING: 788s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 788s # break; 788s # case G_TYPE_VARIANT: 788s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 788s # break; 788s # default: 788s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 788s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 788s # else 788s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 788s # break; 788s # } 788s # return ret; 788s # } 788s # 788s # static void 788s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 788s # GClosure *closure, 788s # GValue *return_value, 788s # unsigned int n_param_values, 788s # const GValue *param_values, 788s # void *invocation_hint G_GNUC_UNUSED, 788s # void *marshal_data) 788s # { 788s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 788s # (void *data1, 788s # GDBusMethodInvocation *arg_method_invocation, 788s # void *data2); 788s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 788s # GCClosure *cc = (GCClosure*) closure; 788s # void *data1, *data2; 788s # gboolean v_return; 788s # 788s # g_return_if_fail (return_value != NULL); 788s # g_return_if_fail (n_param_values == 2); 788s # 788s # if (G_CCLOSURE_SWAP_DATA (closure)) 788s # { 788s # data1 = closure->data; 788s # data2 = g_value_peek_pointer (param_values + 0); 788s # } 788s # else 788s # { 788s # data1 = g_value_peek_pointer (param_values + 0); 788s # data2 = closure->data; 788s # } 788s # 788s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 788s # (marshal_data ? marshal_data : cc->callback); 788s # 788s # v_return = 788s # callback (data1, 788s # g_marshal_value_peek_object (param_values + 1), 788s # data2); 788s # 788s # g_value_set_boolean (return_value, v_return); 788s # } 788s # 788s # /* ------------------------------------------------------------------------ 788s # * Code for interface org.project.CallableIface 788s # * ------------------------------------------------------------------------ 788s # */ 788s # 788s # /** 788s # * SECTION:OrgProjectCallableIface 788s # * @title: OrgProjectCallableIface 788s # * @short_description: Generated C code for the org.project.CallableIface D-Bus interface 788s # * 788s # * This section contains code for working with the org.project.CallableIface D-Bus interface in C. 788s # */ 788s # 788s # /* ---- Introspection data for org.project.CallableIface ---- */ 788s # 788s # static const _ExtendedGDBusMethodInfo _org_project_callable_iface_method_info_simple_method = 788s # { 788s # { 788s # -1, 788s # (gchar *) "SimpleMethod", 788s # NULL, 788s # NULL, 788s # NULL 788s # }, 788s # "handle-simple-method", 788s # FALSE 788s # }; 788s # 788s # static const GDBusMethodInfo * const _org_project_callable_iface_method_info_pointers[] = 788s # { 788s # &_org_project_callable_iface_method_info_simple_method.parent_struct, 788s # NULL 788s # }; 788s # 788s # static const _ExtendedGDBusInterfaceInfo _org_project_callable_iface_interface_info = 788s # { 788s # { 788s # -1, 788s # (gchar *) "org.project.CallableIface", 788s # (GDBusMethodInfo **) &_org_project_callable_iface_method_info_pointers, 788s # NULL, 788s # NULL, 788s # NULL 788s # }, 788s # "org-project-callable-iface", 788s # }; 788s # 788s # 788s # /** 788s # * org_project_callable_iface_interface_info: 788s # * 788s # * Gets a machine-readable description of the org.project.CallableIface D-Bus interface. 788s # * 788s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 788s # */ 788s # GDBusInterfaceInfo * 788s # org_project_callable_iface_interface_info (void) 788s # { 788s # return (GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct; 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_override_properties: 788s # * @klass: The class structure for a #GObject derived class. 788s # * @property_id_begin: The property id to assign to the first overridden property. 788s # * 788s # * Overrides all #GObject properties in the #OrgProjectCallableIface interface for a concrete class. 788s # * The properties are overridden in the order they are defined. 788s # * 788s # * Returns: The last property id. 788s # */ 788s # guint 788s # org_project_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 788s # { 788s # return property_id_begin - 1; 788s # } 788s # 788s # 788s # inline static void 788s # org_project_callable_iface_method_marshal_simple_method ( 788s # GClosure *closure, 788s # GValue *return_value, 788s # unsigned int n_param_values, 788s # const GValue *param_values, 788s # void *invocation_hint, 788s # void *marshal_data) 788s # { 788s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 788s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 788s # } 788s # 788s # 788s # /** 788s # * OrgProjectCallableIface: 788s # * 788s # * Abstract interface type for the D-Bus interface org.project.CallableIface. 788s # */ 788s # 788s # /** 788s # * OrgProjectCallableIfaceIface: 788s # * @parent_iface: The parent interface. 788s # * @handle_simple_method: Handler for the #OrgProjectCallableIface::handle-simple-method signal. 788s # * 788s # * Virtual table for the D-Bus interface org.project.CallableIface. 788s # */ 788s # 788s # typedef OrgProjectCallableIfaceIface OrgProjectCallableIfaceInterface; 788s # G_DEFINE_INTERFACE (OrgProjectCallableIface, org_project_callable_iface, G_TYPE_OBJECT) 788s # 788s # static void 788s # org_project_callable_iface_default_init (OrgProjectCallableIfaceIface *iface) 788s # { 788s # /* GObject signals for incoming D-Bus method calls: */ 788s # /** 788s # * OrgProjectCallableIface::handle-simple-method: 788s # * @object: A #OrgProjectCallableIface. 788s # * @invocation: A #GDBusMethodInvocation. 788s # * 788s # * Signal emitted when a remote caller is invoking the SimpleMethod() D-Bus method. 788s # * 788s # * 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. 788s # * 788s # * 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. 788s # */ 788s # g_signal_new ("handle-simple-method", 788s # G_TYPE_FROM_INTERFACE (iface), 788s # G_SIGNAL_RUN_LAST, 788s # G_STRUCT_OFFSET (OrgProjectCallableIfaceIface, handle_simple_method), 788s # g_signal_accumulator_true_handled, 788s # NULL, 788s # org_project_callable_iface_method_marshal_simple_method, 788s # G_TYPE_BOOLEAN, 788s # 1, 788s # G_TYPE_DBUS_METHOD_INVOCATION); 788s # 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_call_simple_method: 788s # * @proxy: A #OrgProjectCallableIfaceProxy. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Asynchronously invokes the SimpleMethod() D-Bus method on @proxy. 788s # * 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()). 788s # * You can then call org_project_callable_iface_call_simple_method_finish() to get the result of the operation. 788s # * 788s # * See org_project_callable_iface_call_simple_method_sync() for the synchronous, blocking version of this method. 788s # */ 788s # void 788s # org_project_callable_iface_call_simple_method ( 788s # OrgProjectCallableIface *proxy, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 788s # "SimpleMethod", 788s # g_variant_new ("()"), 788s # G_DBUS_CALL_FLAGS_NONE, 788s # -1, 788s # cancellable, 788s # callback, 788s # user_data); 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_call_simple_method_finish: 788s # * @proxy: A #OrgProjectCallableIfaceProxy. 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_call_simple_method(). 788s # * @error: Return location for error or %NULL. 788s # * 788s # * Finishes an operation started with org_project_callable_iface_call_simple_method(). 788s # * 788s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 788s # */ 788s # gboolean 788s # org_project_callable_iface_call_simple_method_finish ( 788s # OrgProjectCallableIface *proxy, 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GVariant *_ret; 788s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 788s # if (_ret == NULL) 788s # goto _out; 788s # g_variant_get (_ret, 788s # "()"); 788s # g_variant_unref (_ret); 788s # _out: 788s # return _ret != NULL; 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_call_simple_method_sync: 788s # * @proxy: A #OrgProjectCallableIfaceProxy. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL. 788s # * 788s # * Synchronously invokes the SimpleMethod() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 788s # * 788s # * See org_project_callable_iface_call_simple_method() for the asynchronous version of this method. 788s # * 788s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 788s # */ 788s # gboolean 788s # org_project_callable_iface_call_simple_method_sync ( 788s # OrgProjectCallableIface *proxy, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GVariant *_ret; 788s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 788s # "SimpleMethod", 788s # g_variant_new ("()"), 788s # G_DBUS_CALL_FLAGS_NONE, 788s # -1, 788s # cancellable, 788s # error); 788s # if (_ret == NULL) 788s # goto _out; 788s # g_variant_get (_ret, 788s # "()"); 788s # g_variant_unref (_ret); 788s # _out: 788s # return _ret != NULL; 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_complete_simple_method: 788s # * @object: A #OrgProjectCallableIface. 788s # * @invocation: (transfer full): A #GDBusMethodInvocation. 788s # * 788s # * 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. 788s # * 788s # * This method will free @invocation, you cannot use it afterwards. 788s # */ 788s # void 788s # org_project_callable_iface_complete_simple_method ( 788s # OrgProjectCallableIface *object G_GNUC_UNUSED, 788s # GDBusMethodInvocation *invocation) 788s # { 788s # g_dbus_method_invocation_return_value (invocation, 788s # g_variant_new ("()")); 788s # } 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * OrgProjectCallableIfaceProxy: 788s # * 788s # * The #OrgProjectCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * OrgProjectCallableIfaceProxyClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for #OrgProjectCallableIfaceProxy. 788s # */ 788s # 788s # struct _OrgProjectCallableIfaceProxyPrivate 788s # { 788s # GData *qdata; 788s # }; 788s # 788s # static void org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface); 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 788s # G_ADD_PRIVATE (OrgProjectCallableIfaceProxy) 788s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 788s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 788s # 788s # #endif 788s # static void 788s # org_project_callable_iface_proxy_finalize (GObject *object) 788s # { 788s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (object); 788s # g_datalist_clear (&proxy->priv->qdata); 788s # G_OBJECT_CLASS (org_project_callable_iface_proxy_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # org_project_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 788s # guint prop_id G_GNUC_UNUSED, 788s # GValue *value G_GNUC_UNUSED, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # static void 788s # org_project_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 788s # guint prop_id G_GNUC_UNUSED, 788s # const GValue *value G_GNUC_UNUSED, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # static void 788s # org_project_callable_iface_proxy_g_signal (GDBusProxy *proxy, 788s # const gchar *sender_name G_GNUC_UNUSED, 788s # const gchar *signal_name, 788s # GVariant *parameters) 788s # { 788s # _ExtendedGDBusSignalInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # gsize n; 788s # guint signal_id; 788s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, signal_name); 788s # if (info == NULL) 788s # return; 788s # num_params = g_variant_n_children (parameters); 788s # paramv = g_new0 (GValue, num_params + 1); 788s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_CALLABLE_IFACE); 788s # g_value_set_object (¶mv[0], proxy); 788s # g_variant_iter_init (&iter, parameters); 788s # n = 1; 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 788s # g_signal_emitv (paramv, signal_id, 0, NULL); 788s # for (n = 0; n < num_params + 1; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static void 788s # org_project_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 788s # GVariant *changed_properties, 788s # const gchar *const *invalidated_properties) 788s # { 788s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (_proxy); 788s # guint n; 788s # const gchar *key; 788s # GVariantIter *iter; 788s # _ExtendedGDBusPropertyInfo *info; 788s # g_variant_get (changed_properties, "a{sv}", &iter); 788s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, key); 788s # g_datalist_remove_data (&proxy->priv->qdata, key); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # g_variant_iter_free (iter); 788s # for (n = 0; invalidated_properties[n] != NULL; n++) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 788s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # } 788s # 788s # static void 788s # org_project_callable_iface_proxy_init (OrgProjectCallableIfaceProxy *proxy) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # proxy->priv = org_project_callable_iface_proxy_get_instance_private (proxy); 788s # #else 788s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, OrgProjectCallableIfaceProxyPrivate); 788s # #endif 788s # 788s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_callable_iface_interface_info ()); 788s # } 788s # 788s # static void 788s # org_project_callable_iface_proxy_class_init (OrgProjectCallableIfaceProxyClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusProxyClass *proxy_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = org_project_callable_iface_proxy_finalize; 788s # gobject_class->get_property = org_project_callable_iface_proxy_get_property; 788s # gobject_class->set_property = org_project_callable_iface_proxy_set_property; 788s # 788s # proxy_class = G_DBUS_PROXY_CLASS (klass); 788s # proxy_class->g_signal = org_project_callable_iface_proxy_g_signal; 788s # proxy_class->g_properties_changed = org_project_callable_iface_proxy_g_properties_changed; 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceProxyPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_proxy_new: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Asynchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new() for more details. 788s # * 788s # * 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()). 788s # * You can then call org_project_callable_iface_proxy_new_finish() to get the result of the operation. 788s # * 788s # * See org_project_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # org_project_callable_iface_proxy_new ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_proxy_new_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with org_project_callable_iface_proxy_new(). 788s # * 788s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # OrgProjectCallableIface * 788s # org_project_callable_iface_proxy_new_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return ORG_PROJECT_CALLABLE_IFACE (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_proxy_new_sync: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Synchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new_sync() for more details. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See org_project_callable_iface_proxy_new() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # OrgProjectCallableIface * 788s # org_project_callable_iface_proxy_new_sync ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return ORG_PROJECT_CALLABLE_IFACE (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /** 788s # * org_project_callable_iface_proxy_new_for_bus: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Like org_project_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * 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()). 788s # * You can then call org_project_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 788s # * 788s # * See org_project_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # org_project_callable_iface_proxy_new_for_bus ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_proxy_new_for_bus_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new_for_bus(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with org_project_callable_iface_proxy_new_for_bus(). 788s # * 788s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # OrgProjectCallableIface * 788s # org_project_callable_iface_proxy_new_for_bus_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return ORG_PROJECT_CALLABLE_IFACE (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_proxy_new_for_bus_sync: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Like org_project_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See org_project_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # OrgProjectCallableIface * 788s # org_project_callable_iface_proxy_new_for_bus_sync ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return ORG_PROJECT_CALLABLE_IFACE (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * OrgProjectCallableIfaceSkeleton: 788s # * 788s # * The #OrgProjectCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * OrgProjectCallableIfaceSkeletonClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for #OrgProjectCallableIfaceSkeleton. 788s # */ 788s # 788s # struct _OrgProjectCallableIfaceSkeletonPrivate 788s # { 788s # GValue *properties; 788s # GList *changed_properties; 788s # GSource *changed_properties_idle_source; 788s # GMainContext *context; 788s # GMutex lock; 788s # }; 788s # 788s # static void 788s # _org_project_callable_iface_skeleton_handle_method_call ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name, 788s # const gchar *method_name, 788s # GVariant *parameters, 788s # GDBusMethodInvocation *invocation, 788s # gpointer user_data) 788s # { 788s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 788s # _ExtendedGDBusMethodInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # guint num_extra; 788s # gsize n; 788s # guint signal_id; 788s # GValue return_value = G_VALUE_INIT; 788s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 788s # g_assert (info != NULL); 788s # num_params = g_variant_n_children (parameters); 788s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 788s # n = 0; 788s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_CALLABLE_IFACE); 788s # g_value_set_object (¶mv[n++], skeleton); 788s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 788s # g_value_set_object (¶mv[n++], invocation); 788s # if (info->pass_fdlist) 788s # { 788s # #ifdef G_OS_UNIX 788s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 788s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 788s # #else 788s # g_assert_not_reached (); 788s # #endif 788s # } 788s # g_variant_iter_init (&iter, parameters); 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 788s # g_value_init (&return_value, G_TYPE_BOOLEAN); 788s # g_signal_emitv (paramv, signal_id, 0, &return_value); 788s # if (!g_value_get_boolean (&return_value)) 788s # 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); 788s # g_value_unset (&return_value); 788s # for (n = 0; n < num_params + num_extra; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static GVariant * 788s # _org_project_callable_iface_skeleton_handle_get_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # GVariant *ret; 788s # ret = NULL; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # g_value_init (&value, pspec->value_type); 788s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 788s # g_value_unset (&value); 788s # } 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _org_project_callable_iface_skeleton_handle_set_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GVariant *variant, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # gboolean ret; 788s # ret = FALSE; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # if (info->use_gvariant) 788s # g_value_set_variant (&value, variant); 788s # else 788s # g_dbus_gvariant_to_gvalue (variant, &value); 788s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # g_value_unset (&value); 788s # ret = TRUE; 788s # } 788s # return ret; 788s # } 788s # 788s # static const GDBusInterfaceVTable _org_project_callable_iface_skeleton_vtable = 788s # { 788s # _org_project_callable_iface_skeleton_handle_method_call, 788s # _org_project_callable_iface_skeleton_handle_get_property, 788s # _org_project_callable_iface_skeleton_handle_set_property, 788s # {NULL} 788s # }; 788s # 788s # static GDBusInterfaceInfo * 788s # org_project_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return org_project_callable_iface_interface_info (); 788s # } 788s # 788s # static GDBusInterfaceVTable * 788s # org_project_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return (GDBusInterfaceVTable *) &_org_project_callable_iface_skeleton_vtable; 788s # } 788s # 788s # static GVariant * 788s # org_project_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 788s # { 788s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (_skeleton); 788s # 788s # GVariantBuilder builder; 788s # guint n; 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 788s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #else 788s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #endif 788s # if (_org_project_callable_iface_interface_info.parent_struct.properties == NULL) 788s # goto out; 788s # for (n = 0; _org_project_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 788s # { 788s # GDBusPropertyInfo *info = _org_project_callable_iface_interface_info.parent_struct.properties[n]; 788s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 788s # { 788s # GVariant *value; 788s # 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); 788s # if (value != NULL) 788s # { 788s # g_variant_take_ref (value); 788s # g_variant_builder_add (&builder, "{sv}", info->name, value); 788s # g_variant_unref (value); 788s # } 788s # } 788s # } 788s # out: 788s # return g_variant_builder_end (&builder); 788s # } 788s # 788s # static void 788s # org_project_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # static void org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface); 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_ADD_PRIVATE (OrgProjectCallableIfaceSkeleton) 788s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 788s # 788s # #endif 788s # static void 788s # org_project_callable_iface_skeleton_finalize (GObject *object) 788s # { 788s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (object); 788s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 788s # if (skeleton->priv->changed_properties_idle_source != NULL) 788s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 788s # g_main_context_unref (skeleton->priv->context); 788s # g_mutex_clear (&skeleton->priv->lock); 788s # G_OBJECT_CLASS (org_project_callable_iface_skeleton_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # org_project_callable_iface_skeleton_init (OrgProjectCallableIfaceSkeleton *skeleton) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # skeleton->priv = org_project_callable_iface_skeleton_get_instance_private (skeleton); 788s # #else 788s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, OrgProjectCallableIfaceSkeletonPrivate); 788s # #endif 788s # 788s # g_mutex_init (&skeleton->priv->lock); 788s # skeleton->priv->context = g_main_context_ref_thread_default (); 788s # } 788s # 788s # static void 788s # org_project_callable_iface_skeleton_class_init (OrgProjectCallableIfaceSkeletonClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusInterfaceSkeletonClass *skeleton_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = org_project_callable_iface_skeleton_finalize; 788s # 788s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 788s # skeleton_class->get_info = org_project_callable_iface_skeleton_dbus_interface_get_info; 788s # skeleton_class->get_properties = org_project_callable_iface_skeleton_dbus_interface_get_properties; 788s # skeleton_class->flush = org_project_callable_iface_skeleton_dbus_interface_flush; 788s # skeleton_class->get_vtable = org_project_callable_iface_skeleton_dbus_interface_get_vtable; 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceSkeletonPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # /** 788s # * org_project_callable_iface_skeleton_new: 788s # * 788s # * Creates a skeleton object for the D-Bus interface org.project.CallableIface. 788s # * 788s # * Returns: (transfer full) (type OrgProjectCallableIfaceSkeleton): The skeleton object. 788s # */ 788s # OrgProjectCallableIface * 788s # org_project_callable_iface_skeleton_new (void) 788s # { 788s # return ORG_PROJECT_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, NULL)); 788s # } 788s # 788s # /* ------------------------------------------------------------------------ 788s # * Code for interface org.project.OtherCallableIface 788s # * ------------------------------------------------------------------------ 788s # */ 788s # 788s # /** 788s # * SECTION:OrgProjectOtherCallableIface 788s # * @title: OrgProjectOtherCallableIface 788s # * @short_description: Generated C code for the org.project.OtherCallableIface D-Bus interface 788s # * 788s # * This section contains code for working with the org.project.OtherCallableIface D-Bus interface in C. 788s # */ 788s # 788s # /* ---- Introspection data for org.project.OtherCallableIface ---- */ 788s # 788s # static const _ExtendedGDBusMethodInfo _org_project_other_callable_iface_method_info_simple_method = 788s # { 788s # { 788s # -1, 788s # (gchar *) "SimpleMethod", 788s # NULL, 788s # NULL, 788s # NULL 788s # }, 788s # "handle-simple-method", 788s # FALSE 788s # }; 788s # 788s # static const GDBusMethodInfo * const _org_project_other_callable_iface_method_info_pointers[] = 788s # { 788s # &_org_project_other_callable_iface_method_info_simple_method.parent_struct, 788s # NULL 788s # }; 788s # 788s # static const _ExtendedGDBusInterfaceInfo _org_project_other_callable_iface_interface_info = 788s # { 788s # { 788s # -1, 788s # (gchar *) "org.project.OtherCallableIface", 788s # (GDBusMethodInfo **) &_org_project_other_callable_iface_method_info_pointers, 788s # NULL, 788s # NULL, 788s # NULL 788s # }, 788s # "org-project-other-callable-iface", 788s # }; 788s # 788s # 788s # /** 788s # * org_project_other_callable_iface_interface_info: 788s # * 788s # * Gets a machine-readable description of the org.project.OtherCallableIface D-Bus interface. 788s # * 788s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 788s # */ 788s # GDBusInterfaceInfo * 788s # org_project_other_callable_iface_interface_info (void) 788s # { 788s # return (GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct; 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_override_properties: 788s # * @klass: The class structure for a #GObject derived class. 788s # * @property_id_begin: The property id to assign to the first overridden property. 788s # * 788s # * Overrides all #GObject properties in the #OrgProjectOtherCallableIface interface for a concrete class. 788s # * The properties are overridden in the order they are defined. 788s # * 788s # * Returns: The last property id. 788s # */ 788s # guint 788s # org_project_other_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 788s # { 788s # return property_id_begin - 1; 788s # } 788s # 788s # 788s # inline static void 788s # org_project_other_callable_iface_method_marshal_simple_method ( 788s # GClosure *closure, 788s # GValue *return_value, 788s # unsigned int n_param_values, 788s # const GValue *param_values, 788s # void *invocation_hint, 788s # void *marshal_data) 788s # { 788s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 788s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 788s # } 788s # 788s # 788s # /** 788s # * OrgProjectOtherCallableIface: 788s # * 788s # * Abstract interface type for the D-Bus interface org.project.OtherCallableIface. 788s # */ 788s # 788s # /** 788s # * OrgProjectOtherCallableIfaceIface: 788s # * @parent_iface: The parent interface. 788s # * @handle_simple_method: Handler for the #OrgProjectOtherCallableIface::handle-simple-method signal. 788s # * 788s # * Virtual table for the D-Bus interface org.project.OtherCallableIface. 788s # */ 788s # 788s # typedef OrgProjectOtherCallableIfaceIface OrgProjectOtherCallableIfaceInterface; 788s # G_DEFINE_INTERFACE (OrgProjectOtherCallableIface, org_project_other_callable_iface, G_TYPE_OBJECT) 788s # 788s # static void 788s # org_project_other_callable_iface_default_init (OrgProjectOtherCallableIfaceIface *iface) 788s # { 788s # /* GObject signals for incoming D-Bus method calls: */ 788s # /** 788s # * OrgProjectOtherCallableIface::handle-simple-method: 788s # * @object: A #OrgProjectOtherCallableIface. 788s # * @invocation: A #GDBusMethodInvocation. 788s # * 788s # * Signal emitted when a remote caller is invoking the SimpleMethod() D-Bus method. 788s # * 788s # * 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. 788s # * 788s # * 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. 788s # */ 788s # g_signal_new ("handle-simple-method", 788s # G_TYPE_FROM_INTERFACE (iface), 788s # G_SIGNAL_RUN_LAST, 788s # G_STRUCT_OFFSET (OrgProjectOtherCallableIfaceIface, handle_simple_method), 788s # g_signal_accumulator_true_handled, 788s # NULL, 788s # org_project_other_callable_iface_method_marshal_simple_method, 788s # G_TYPE_BOOLEAN, 788s # 1, 788s # G_TYPE_DBUS_METHOD_INVOCATION); 788s # 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_call_simple_method: 788s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Asynchronously invokes the SimpleMethod() D-Bus method on @proxy. 788s # * 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()). 788s # * You can then call org_project_other_callable_iface_call_simple_method_finish() to get the result of the operation. 788s # * 788s # * See org_project_other_callable_iface_call_simple_method_sync() for the synchronous, blocking version of this method. 788s # */ 788s # void 788s # org_project_other_callable_iface_call_simple_method ( 788s # OrgProjectOtherCallableIface *proxy, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 788s # "SimpleMethod", 788s # g_variant_new ("()"), 788s # G_DBUS_CALL_FLAGS_NONE, 788s # -1, 788s # cancellable, 788s # callback, 788s # user_data); 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_call_simple_method_finish: 788s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_call_simple_method(). 788s # * @error: Return location for error or %NULL. 788s # * 788s # * Finishes an operation started with org_project_other_callable_iface_call_simple_method(). 788s # * 788s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 788s # */ 788s # gboolean 788s # org_project_other_callable_iface_call_simple_method_finish ( 788s # OrgProjectOtherCallableIface *proxy, 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GVariant *_ret; 788s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 788s # if (_ret == NULL) 788s # goto _out; 788s # g_variant_get (_ret, 788s # "()"); 788s # g_variant_unref (_ret); 788s # _out: 788s # return _ret != NULL; 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_call_simple_method_sync: 788s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL. 788s # * 788s # * Synchronously invokes the SimpleMethod() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 788s # * 788s # * See org_project_other_callable_iface_call_simple_method() for the asynchronous version of this method. 788s # * 788s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 788s # */ 788s # gboolean 788s # org_project_other_callable_iface_call_simple_method_sync ( 788s # OrgProjectOtherCallableIface *proxy, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GVariant *_ret; 788s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 788s # "SimpleMethod", 788s # g_variant_new ("()"), 788s # G_DBUS_CALL_FLAGS_NONE, 788s # -1, 788s # cancellable, 788s # error); 788s # if (_ret == NULL) 788s # goto _out; 788s # g_variant_get (_ret, 788s # "()"); 788s # g_variant_unref (_ret); 788s # _out: 788s # return _ret != NULL; 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_complete_simple_method: 788s # * @object: A #OrgProjectOtherCallableIface. 788s # * @invocation: (transfer full): A #GDBusMethodInvocation. 788s # * 788s # * 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. 788s # * 788s # * This method will free @invocation, you cannot use it afterwards. 788s # */ 788s # void 788s # org_project_other_callable_iface_complete_simple_method ( 788s # OrgProjectOtherCallableIface *object G_GNUC_UNUSED, 788s # GDBusMethodInvocation *invocation) 788s # { 788s # g_dbus_method_invocation_return_value (invocation, 788s # g_variant_new ("()")); 788s # } 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * OrgProjectOtherCallableIfaceProxy: 788s # * 788s # * The #OrgProjectOtherCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * OrgProjectOtherCallableIfaceProxyClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for #OrgProjectOtherCallableIfaceProxy. 788s # */ 788s # 788s # struct _OrgProjectOtherCallableIfaceProxyPrivate 788s # { 788s # GData *qdata; 788s # }; 788s # 788s # static void org_project_other_callable_iface_proxy_iface_init (OrgProjectOtherCallableIfaceIface *iface); 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceProxy, org_project_other_callable_iface_proxy, G_TYPE_DBUS_PROXY, 788s # G_ADD_PRIVATE (OrgProjectOtherCallableIfaceProxy) 788s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_proxy_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceProxy, org_project_other_callable_iface_proxy, G_TYPE_DBUS_PROXY, 788s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_proxy_iface_init)) 788s # 788s # #endif 788s # static void 788s # org_project_other_callable_iface_proxy_finalize (GObject *object) 788s # { 788s # OrgProjectOtherCallableIfaceProxy *proxy = ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY (object); 788s # g_datalist_clear (&proxy->priv->qdata); 788s # G_OBJECT_CLASS (org_project_other_callable_iface_proxy_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 788s # guint prop_id G_GNUC_UNUSED, 788s # GValue *value G_GNUC_UNUSED, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 788s # guint prop_id G_GNUC_UNUSED, 788s # const GValue *value G_GNUC_UNUSED, 788s # GParamSpec *pspec G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_proxy_g_signal (GDBusProxy *proxy, 788s # const gchar *sender_name G_GNUC_UNUSED, 788s # const gchar *signal_name, 788s # GVariant *parameters) 788s # { 788s # _ExtendedGDBusSignalInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # gsize n; 788s # guint signal_id; 788s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, signal_name); 788s # if (info == NULL) 788s # return; 788s # num_params = g_variant_n_children (parameters); 788s # paramv = g_new0 (GValue, num_params + 1); 788s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 788s # g_value_set_object (¶mv[0], proxy); 788s # g_variant_iter_init (&iter, parameters); 788s # n = 1; 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 788s # g_signal_emitv (paramv, signal_id, 0, NULL); 788s # for (n = 0; n < num_params + 1; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 788s # GVariant *changed_properties, 788s # const gchar *const *invalidated_properties) 788s # { 788s # OrgProjectOtherCallableIfaceProxy *proxy = ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY (_proxy); 788s # guint n; 788s # const gchar *key; 788s # GVariantIter *iter; 788s # _ExtendedGDBusPropertyInfo *info; 788s # g_variant_get (changed_properties, "a{sv}", &iter); 788s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, key); 788s # g_datalist_remove_data (&proxy->priv->qdata, key); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # g_variant_iter_free (iter); 788s # for (n = 0; invalidated_properties[n] != NULL; n++) 788s # { 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 788s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 788s # if (info != NULL) 788s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 788s # } 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_proxy_init (OrgProjectOtherCallableIfaceProxy *proxy) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # proxy->priv = org_project_other_callable_iface_proxy_get_instance_private (proxy); 788s # #else 788s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, OrgProjectOtherCallableIfaceProxyPrivate); 788s # #endif 788s # 788s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_other_callable_iface_interface_info ()); 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_proxy_class_init (OrgProjectOtherCallableIfaceProxyClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusProxyClass *proxy_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = org_project_other_callable_iface_proxy_finalize; 788s # gobject_class->get_property = org_project_other_callable_iface_proxy_get_property; 788s # gobject_class->set_property = org_project_other_callable_iface_proxy_set_property; 788s # 788s # proxy_class = G_DBUS_PROXY_CLASS (klass); 788s # proxy_class->g_signal = org_project_other_callable_iface_proxy_g_signal; 788s # proxy_class->g_properties_changed = org_project_other_callable_iface_proxy_g_properties_changed; 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (OrgProjectOtherCallableIfaceProxyPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_proxy_iface_init (OrgProjectOtherCallableIfaceIface *iface G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_proxy_new: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Asynchronously creates a proxy for the D-Bus interface org.project.OtherCallableIface. See g_dbus_proxy_new() for more details. 788s # * 788s # * 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()). 788s # * You can then call org_project_other_callable_iface_proxy_new_finish() to get the result of the operation. 788s # * 788s # * See org_project_other_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # org_project_other_callable_iface_proxy_new ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_proxy_new_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_proxy_new(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with org_project_other_callable_iface_proxy_new(). 788s # * 788s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # OrgProjectOtherCallableIface * 788s # org_project_other_callable_iface_proxy_new_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_proxy_new_sync: 788s # * @connection: A #GDBusConnection. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Synchronously creates a proxy for the D-Bus interface org.project.OtherCallableIface. See g_dbus_proxy_new_sync() for more details. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See org_project_other_callable_iface_proxy_new() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # OrgProjectOtherCallableIface * 788s # org_project_other_callable_iface_proxy_new_sync ( 788s # GDBusConnection *connection, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /** 788s # * org_project_other_callable_iface_proxy_new_for_bus: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 788s # * @user_data: User data to pass to @callback. 788s # * 788s # * Like org_project_other_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * 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()). 788s # * You can then call org_project_other_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 788s # * 788s # * See org_project_other_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 788s # */ 788s # void 788s # org_project_other_callable_iface_proxy_new_for_bus ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GAsyncReadyCallback callback, 788s # gpointer user_data) 788s # { 788s # 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); 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_proxy_new_for_bus_finish: 788s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_proxy_new_for_bus(). 788s # * @error: Return location for error or %NULL 788s # * 788s # * Finishes an operation started with org_project_other_callable_iface_proxy_new_for_bus(). 788s # * 788s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # OrgProjectOtherCallableIface * 788s # org_project_other_callable_iface_proxy_new_for_bus_finish ( 788s # GAsyncResult *res, 788s # GError **error) 788s # { 788s # GObject *ret; 788s # GObject *source_object; 788s # source_object = g_async_result_get_source_object (res); 788s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 788s # g_object_unref (source_object); 788s # if (ret != NULL) 788s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_proxy_new_for_bus_sync: 788s # * @bus_type: A #GBusType. 788s # * @flags: Flags from the #GDBusProxyFlags enumeration. 788s # * @name: A bus name (well-known or unique). 788s # * @object_path: An object path. 788s # * @cancellable: (nullable): A #GCancellable or %NULL. 788s # * @error: Return location for error or %NULL 788s # * 788s # * Like org_project_other_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 788s # * 788s # * The calling thread is blocked until a reply is received. 788s # * 788s # * See org_project_other_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 788s # * 788s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 788s # */ 788s # OrgProjectOtherCallableIface * 788s # org_project_other_callable_iface_proxy_new_for_bus_sync ( 788s # GBusType bus_type, 788s # GDBusProxyFlags flags, 788s # const gchar *name, 788s # const gchar *object_path, 788s # GCancellable *cancellable, 788s # GError **error) 788s # { 788s # GInitable *ret; 788s # 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); 788s # if (ret != NULL) 788s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 788s # else 788s # return NULL; 788s # } 788s # 788s # 788s # /* ------------------------------------------------------------------------ */ 788s # 788s # /** 788s # * OrgProjectOtherCallableIfaceSkeleton: 788s # * 788s # * The #OrgProjectOtherCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 788s # */ 788s # 788s # /** 788s # * OrgProjectOtherCallableIfaceSkeletonClass: 788s # * @parent_class: The parent class. 788s # * 788s # * Class structure for #OrgProjectOtherCallableIfaceSkeleton. 788s # */ 788s # 788s # struct _OrgProjectOtherCallableIfaceSkeletonPrivate 788s # { 788s # GValue *properties; 788s # GList *changed_properties; 788s # GSource *changed_properties_idle_source; 788s # GMainContext *context; 788s # GMutex lock; 788s # }; 788s # 788s # static void 788s # _org_project_other_callable_iface_skeleton_handle_method_call ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name, 788s # const gchar *method_name, 788s # GVariant *parameters, 788s # GDBusMethodInvocation *invocation, 788s # gpointer user_data) 788s # { 788s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 788s # _ExtendedGDBusMethodInfo *info; 788s # GVariantIter iter; 788s # GVariant *child; 788s # GValue *paramv; 788s # gsize num_params; 788s # guint num_extra; 788s # gsize n; 788s # guint signal_id; 788s # GValue return_value = G_VALUE_INIT; 788s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 788s # g_assert (info != NULL); 788s # num_params = g_variant_n_children (parameters); 788s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 788s # n = 0; 788s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 788s # g_value_set_object (¶mv[n++], skeleton); 788s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 788s # g_value_set_object (¶mv[n++], invocation); 788s # if (info->pass_fdlist) 788s # { 788s # #ifdef G_OS_UNIX 788s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 788s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 788s # #else 788s # g_assert_not_reached (); 788s # #endif 788s # } 788s # g_variant_iter_init (&iter, parameters); 788s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 788s # { 788s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 788s # if (arg_info->use_gvariant) 788s # { 788s # g_value_init (¶mv[n], G_TYPE_VARIANT); 788s # g_value_set_variant (¶mv[n], child); 788s # n++; 788s # } 788s # else 788s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 788s # g_variant_unref (child); 788s # } 788s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 788s # g_value_init (&return_value, G_TYPE_BOOLEAN); 788s # g_signal_emitv (paramv, signal_id, 0, &return_value); 788s # if (!g_value_get_boolean (&return_value)) 788s # 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); 788s # g_value_unset (&return_value); 788s # for (n = 0; n < num_params + num_extra; n++) 788s # g_value_unset (¶mv[n]); 788s # g_free (paramv); 788s # } 788s # 788s # static GVariant * 788s # _org_project_other_callable_iface_skeleton_handle_get_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # GVariant *ret; 788s # ret = NULL; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # g_value_init (&value, pspec->value_type); 788s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 788s # g_value_unset (&value); 788s # } 788s # return ret; 788s # } 788s # 788s # static gboolean 788s # _org_project_other_callable_iface_skeleton_handle_set_property ( 788s # GDBusConnection *connection G_GNUC_UNUSED, 788s # const gchar *sender G_GNUC_UNUSED, 788s # const gchar *object_path G_GNUC_UNUSED, 788s # const gchar *interface_name G_GNUC_UNUSED, 788s # const gchar *property_name, 788s # GVariant *variant, 788s # GError **error, 788s # gpointer user_data) 788s # { 788s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 788s # GValue value = G_VALUE_INIT; 788s # GParamSpec *pspec; 788s # _ExtendedGDBusPropertyInfo *info; 788s # gboolean ret; 788s # ret = FALSE; 788s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, property_name); 788s # g_assert (info != NULL); 788s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 788s # if (pspec == NULL) 788s # { 788s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 788s # } 788s # else 788s # { 788s # if (info->use_gvariant) 788s # g_value_set_variant (&value, variant); 788s # else 788s # g_dbus_gvariant_to_gvalue (variant, &value); 788s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 788s # g_value_unset (&value); 788s # ret = TRUE; 788s # } 788s # return ret; 788s # } 788s # 788s # static const GDBusInterfaceVTable _org_project_other_callable_iface_skeleton_vtable = 788s # { 788s # _org_project_other_callable_iface_skeleton_handle_method_call, 788s # _org_project_other_callable_iface_skeleton_handle_get_property, 788s # _org_project_other_callable_iface_skeleton_handle_set_property, 788s # {NULL} 788s # }; 788s # 788s # static GDBusInterfaceInfo * 788s # org_project_other_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return org_project_other_callable_iface_interface_info (); 788s # } 788s # 788s # static GDBusInterfaceVTable * 788s # org_project_other_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 788s # { 788s # return (GDBusInterfaceVTable *) &_org_project_other_callable_iface_skeleton_vtable; 788s # } 788s # 788s # static GVariant * 788s # org_project_other_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 788s # { 788s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (_skeleton); 788s # 788s # GVariantBuilder builder; 788s # guint n; 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 788s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #else 788s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 788s # #endif 788s # if (_org_project_other_callable_iface_interface_info.parent_struct.properties == NULL) 788s # goto out; 788s # for (n = 0; _org_project_other_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 788s # { 788s # GDBusPropertyInfo *info = _org_project_other_callable_iface_interface_info.parent_struct.properties[n]; 788s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 788s # { 788s # GVariant *value; 788s # 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); 788s # if (value != NULL) 788s # { 788s # g_variant_take_ref (value); 788s # g_variant_builder_add (&builder, "{sv}", info->name, value); 788s # g_variant_unref (value); 788s # } 788s # } 788s # } 788s # out: 788s # return g_variant_builder_end (&builder); 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # static void org_project_other_callable_iface_skeleton_iface_init (OrgProjectOtherCallableIfaceIface *iface); 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceSkeleton, org_project_other_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_ADD_PRIVATE (OrgProjectOtherCallableIfaceSkeleton) 788s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_skeleton_iface_init)) 788s # 788s # #else 788s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceSkeleton, org_project_other_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 788s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_skeleton_iface_init)) 788s # 788s # #endif 788s # static void 788s # org_project_other_callable_iface_skeleton_finalize (GObject *object) 788s # { 788s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (object); 788s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 788s # if (skeleton->priv->changed_properties_idle_source != NULL) 788s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 788s # g_main_context_unref (skeleton->priv->context); 788s # g_mutex_clear (&skeleton->priv->lock); 788s # G_OBJECT_CLASS (org_project_other_callable_iface_skeleton_parent_class)->finalize (object); 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_skeleton_init (OrgProjectOtherCallableIfaceSkeleton *skeleton) 788s # { 788s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 788s # skeleton->priv = org_project_other_callable_iface_skeleton_get_instance_private (skeleton); 788s # #else 788s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON, OrgProjectOtherCallableIfaceSkeletonPrivate); 788s # #endif 788s # 788s # g_mutex_init (&skeleton->priv->lock); 788s # skeleton->priv->context = g_main_context_ref_thread_default (); 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_skeleton_class_init (OrgProjectOtherCallableIfaceSkeletonClass *klass) 788s # { 788s # GObjectClass *gobject_class; 788s # GDBusInterfaceSkeletonClass *skeleton_class; 788s # 788s # gobject_class = G_OBJECT_CLASS (klass); 788s # gobject_class->finalize = org_project_other_callable_iface_skeleton_finalize; 788s # 788s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 788s # skeleton_class->get_info = org_project_other_callable_iface_skeleton_dbus_interface_get_info; 788s # skeleton_class->get_properties = org_project_other_callable_iface_skeleton_dbus_interface_get_properties; 788s # skeleton_class->flush = org_project_other_callable_iface_skeleton_dbus_interface_flush; 788s # skeleton_class->get_vtable = org_project_other_callable_iface_skeleton_dbus_interface_get_vtable; 788s # 788s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 788s # g_type_class_add_private (klass, sizeof (OrgProjectOtherCallableIfaceSkeletonPrivate)); 788s # #endif 788s # } 788s # 788s # static void 788s # org_project_other_callable_iface_skeleton_iface_init (OrgProjectOtherCallableIfaceIface *iface G_GNUC_UNUSED) 788s # { 788s # } 788s # 788s # /** 788s # * org_project_other_callable_iface_skeleton_new: 788s # * 788s # * Creates a skeleton object for the D-Bus interface org.project.OtherCallableIface. 788s # * 788s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceSkeleton): The skeleton object. 788s # */ 788s # OrgProjectOtherCallableIface * 788s # org_project_other_callable_iface_skeleton_new (void) 788s # { 788s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON, NULL)); 788s # } 788s # Error: 789s ok 10 __main__.TestCodegen.test_generate_methods_marshaller_single_typed_in_args 789s # gdbus-codegen: /usr/bin/gdbus-codegen 789s # tmpdir: /tmp/tmp7e2ffgme 789s # /tmp/tmp7e2ffgme/tmpbci31koa.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpbci31koa.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOOLEAN ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBooleanFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # gboolean arg_arg_b, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectBooleanFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectBooleanFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_boolean (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_b_IN_ARG_arg_b = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_b", 789s # (gchar *) "b", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_b_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_b_IN_ARG_arg_b.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_b = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodB", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_b_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-b", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_b.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_b ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOOLEAN (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_b: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-b signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-b: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_b: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodB() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-b", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_b), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_b, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_BOOLEAN); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_b: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_b: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodB() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_b_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_b_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_b ( 789s # OrgProjectUsefulInterface *proxy, 789s # gboolean arg_arg_b, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodB", 789s # g_variant_new ("(b)", 789s # arg_arg_b), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_b_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_b(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_b(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_b_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_b_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_b: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodB() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_b() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_b_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gboolean arg_arg_b, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodB", 789s # g_variant_new ("(b)", 789s # arg_arg_b), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_b: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_b ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpdejqgf5l.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpdejqgf5l.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UCHAR ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectUcharFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # guchar arg_arg_y, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectUcharFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectUcharFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_uchar (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_y_IN_ARG_arg_y = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_y", 789s # (gchar *) "y", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_y_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_y_IN_ARG_arg_y.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_y = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodY", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_y_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-y", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_y.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_y ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UCHAR (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_y: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-y signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-y: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_y: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodY() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-y", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_y), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_y, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UCHAR); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_y: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_y: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodY() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_y_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_y_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_y ( 789s # OrgProjectUsefulInterface *proxy, 789s # guchar arg_arg_y, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodY", 789s # g_variant_new ("(y)", 789s # arg_arg_y), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_y_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_y(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_y(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_y_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_y_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_y: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodY() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_y() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_y_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # guchar arg_arg_y, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodY", 789s # g_variant_new ("(y)", 789s # arg_arg_y), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_y: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_y ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpmo05zgl1.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpmo05zgl1.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectIntFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # gint16 arg_arg_n, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectIntFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectIntFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_int (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_n_IN_ARG_arg_n = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_n", 789s # (gchar *) "n", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_n_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_n_IN_ARG_arg_n.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_n = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodN", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_n_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-n", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_n.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_n ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_n: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-n signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-n: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_n: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodN() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-n", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_n), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_n, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_INT); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_n: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_n: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodN() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_n_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_n_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_n ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint16 arg_arg_n, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodN", 789s # g_variant_new ("(n)", 789s # arg_arg_n), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_n_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_n(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_n(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_n_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_n_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_n: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodN() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_n() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_n_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint16 arg_arg_n, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodN", 789s # g_variant_new ("(n)", 789s # arg_arg_n), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_n: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_n ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpv90i_4us.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpv90i_4us.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectUintFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # guint16 arg_arg_q, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectUintFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectUintFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_uint (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_q_IN_ARG_arg_q = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_q", 789s # (gchar *) "q", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_q_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_q_IN_ARG_arg_q.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_q = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodQ", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_q_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-q", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_q.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_q ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_q: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-q signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-q: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_q: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodQ() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-q", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_q), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_q, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_q: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_q: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodQ() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_q_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_q_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_q ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint16 arg_arg_q, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodQ", 789s # g_variant_new ("(q)", 789s # arg_arg_q), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_q_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_q(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_q(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_q_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_q_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_q: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodQ() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_q() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_q_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint16 arg_arg_q, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodQ", 789s # g_variant_new ("(q)", 789s # arg_arg_q), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_q: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_q ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpl436vl_z.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpl436vl_z.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectIntFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # gint arg_arg_i, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectIntFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectIntFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_int (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_i_IN_ARG_arg_i = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_i", 789s # (gchar *) "i", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_i_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_i_IN_ARG_arg_i.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_i = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodI", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_i_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-i", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_i.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_i ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_i: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-i signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-i: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_i: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodI() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-i", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_i), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_i, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_INT); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_i: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_i: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodI() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_i_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_i_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_i ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint arg_arg_i, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodI", 789s # g_variant_new ("(i)", 789s # arg_arg_i), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_i_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_i(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_i(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_i_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_i_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_i: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodI() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_i() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_i_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint arg_arg_i, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodI", 789s # g_variant_new ("(i)", 789s # arg_arg_i), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_i: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_i ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmps1faq1eg.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmps1faq1eg.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectUintFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # guint arg_arg_u, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectUintFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectUintFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_uint (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_u_IN_ARG_arg_u = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_u", 789s # (gchar *) "u", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_u_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_u_IN_ARG_arg_u.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_u = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodU", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_u_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-u", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_u.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_u ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_u: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-u signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-u: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_u: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodU() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-u", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_u), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_u, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_u: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_u: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodU() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_u_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_u_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_u ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint arg_arg_u, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodU", 789s # g_variant_new ("(u)", 789s # arg_arg_u), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_u_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_u(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_u(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_u_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_u_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_u: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodU() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_u() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_u_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint arg_arg_u, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodU", 789s # g_variant_new ("(u)", 789s # arg_arg_u), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_u: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_u ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpl0_0n3in.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpl0_0n3in.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT64 ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectInt64Func) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # gint64 arg_arg_x, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectInt64Func callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectInt64Func) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_int64 (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_x_IN_ARG_arg_x = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_x", 789s # (gchar *) "x", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_x_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_x_IN_ARG_arg_x.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_x = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodX", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_x_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-x", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_x.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_x ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_INT64 (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_x: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-x signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-x: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_x: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodX() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-x", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_x), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_x, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_INT64); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_x: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_x: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodX() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_x_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_x_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_x ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint64 arg_arg_x, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodX", 789s # g_variant_new ("(x)", 789s # arg_arg_x), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_x_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_x(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_x(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_x_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_x_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_x: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodX() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_x() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_x_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint64 arg_arg_x, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodX", 789s # g_variant_new ("(x)", 789s # arg_arg_x), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_x: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_x ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpatxc1d9n.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpatxc1d9n.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT64 ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectUint64Func) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # guint64 arg_arg_t, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectUint64Func callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectUint64Func) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_uint64 (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_t_IN_ARG_arg_t = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_t", 789s # (gchar *) "t", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_t_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_t_IN_ARG_arg_t.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_t = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodT", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_t_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-t", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_t.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_t ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_UINT64 (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_t: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-t signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-t: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_t: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodT() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-t", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_t), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_t, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UINT64); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_t: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_t: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodT() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_t_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_t_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_t ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint64 arg_arg_t, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodT", 789s # g_variant_new ("(t)", 789s # arg_arg_t), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_t_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_t(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_t(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_t_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_t_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_t: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodT() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_t() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_t_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint64 arg_arg_t, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodT", 789s # g_variant_new ("(t)", 789s # arg_arg_t), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_t: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_t ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmp43kzeyq1.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmp43kzeyq1.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_DOUBLE ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectDoubleFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # gdouble arg_arg_d, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectDoubleFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectDoubleFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_double (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_d_IN_ARG_arg_d = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_d", 789s # (gchar *) "d", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_d_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_d_IN_ARG_arg_d.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_d = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodD", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_d_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-d", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_d.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_d ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_DOUBLE (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_d: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-d signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-d: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_d: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodD() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-d", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_d), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_d, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_DOUBLE); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_d: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_d: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodD() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_d_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_d_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_d ( 789s # OrgProjectUsefulInterface *proxy, 789s # gdouble arg_arg_d, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodD", 789s # g_variant_new ("(d)", 789s # arg_arg_d), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_d_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_d(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_d(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_d_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_d_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_d: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodD() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_d() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_d_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gdouble arg_arg_d, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodD", 789s # g_variant_new ("(d)", 789s # arg_arg_d), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_d: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_d ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmp46r6pxk6.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmp46r6pxk6.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectStringFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # const gchar *arg_arg_s, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectStringFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectStringFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_string (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_s_IN_ARG_arg_s = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_s", 789s # (gchar *) "s", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_s_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_s_IN_ARG_arg_s.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_s = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodS", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_s_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-s", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_s.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_s ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_s: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-s signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-s: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_s: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodS() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-s", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_s), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_s, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_s: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_s: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodS() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_s_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_s_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_s ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *arg_arg_s, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodS", 789s # g_variant_new ("(s)", 789s # arg_arg_s), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_s_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_s(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_s(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_s_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_s_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_s: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodS() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_s() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_s_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *arg_arg_s, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodS", 789s # g_variant_new ("(s)", 789s # arg_arg_s), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_s: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_s ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpcznf7wi2.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpcznf7wi2.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectStringFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # const gchar *arg_arg_o, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectStringFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectStringFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_string (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_o_IN_ARG_arg_o = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_o", 789s # (gchar *) "o", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_o_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_o_IN_ARG_arg_o.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_o = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodO", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_o_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-o", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_o.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_o ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_o: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-o signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-o: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_o: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodO() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-o", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_o), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_o, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_o: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_o: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodO() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_o_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_o_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_o ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *arg_arg_o, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodO", 789s # g_variant_new ("(o)", 789s # arg_arg_o), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_o_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_o(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_o(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_o_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_o_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_o: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodO() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_o() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_o_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *arg_arg_o, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodO", 789s # g_variant_new ("(o)", 789s # arg_arg_o), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_o: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_o ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpod6t78zy.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpod6t78zy.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectStringFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # const gchar *arg_arg_g, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectStringFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectStringFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_string (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_g_IN_ARG_arg_g = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_g", 789s # (gchar *) "g", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_g_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_g_IN_ARG_arg_g.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_g = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodG", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_g_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-g", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_g.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_g ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_g: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-g signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-g: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_g: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodG() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-g", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_g), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_g, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_g: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_g: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodG() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_g_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_g_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_g ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *arg_arg_g, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodG", 789s # g_variant_new ("(g)", 789s # arg_arg_g), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_g_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_g(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_g(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_g_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_g_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_g: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodG() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_g() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_g_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *arg_arg_g, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodG", 789s # g_variant_new ("(g)", 789s # arg_arg_g), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_g: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_g ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpolrm36jl.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpolrm36jl.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_VARIANT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectVariantFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # GVariant *arg_arg_h, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectVariantFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectVariantFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_variant (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_h_IN_ARG_arg_h = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_h", 789s # (gchar *) "h", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_h_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_h_IN_ARG_arg_h.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_h = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodH", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_h_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-h", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_h.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_h ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_VARIANT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_h: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-h signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-h: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_h: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodH() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-h", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_h), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_h, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_VARIANT); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_h: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_h: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodH() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_h_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_h_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_h ( 789s # OrgProjectUsefulInterface *proxy, 789s # GVariant *arg_arg_h, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodH", 789s # g_variant_new ("(@h)", 789s # arg_arg_h), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_h_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_h(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_h(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_h_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_h_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_h: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodH() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_h() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_h_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # GVariant *arg_arg_h, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodH", 789s # g_variant_new ("(@h)", 789s # arg_arg_h), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_h: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_h ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmp3tben5bx.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmp3tben5bx.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectStringFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # const gchar *arg_arg_ay, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectStringFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectStringFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_string (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_ay_IN_ARG_arg_ay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_ay", 789s # (gchar *) "ay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_ay_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_ay_IN_ARG_arg_ay.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_ay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAy", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_ay_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-ay", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_ay.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_ay ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_STRING (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_ay: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-ay signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-ay: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_ay: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAy() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-ay", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_ay), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_ay, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRING); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ay: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_ay: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAy() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_ay_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_ay_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_ay ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *arg_arg_ay, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAy", 789s # g_variant_new ("(^ay)", 789s # arg_arg_ay), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ay_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_ay(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_ay(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_ay_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ay_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_ay: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAy() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_ay() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_ay_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *arg_arg_ay, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAy", 789s # g_variant_new ("(^ay)", 789s # arg_arg_ay), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_ay: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_ay ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpq46_v_4_.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpq46_v_4_.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # const gchar *const *arg_arg_as, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectBoxedFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_boxed (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_as_IN_ARG_arg_as = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_as", 789s # (gchar *) "as", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_as_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_as_IN_ARG_arg_as.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_as = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAs", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_as_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-as", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_as.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_as ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_as: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-as signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-as: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_as: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAs() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-as", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_as), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_as, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRV); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_as: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_as: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAs() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_as_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_as_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_as ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *const *arg_arg_as, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAs", 789s # g_variant_new ("(^as)", 789s # arg_arg_as), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_as_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_as(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_as(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_as_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_as_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_as: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_as() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_as_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *const *arg_arg_as, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAs", 789s # g_variant_new ("(^as)", 789s # arg_arg_as), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_as: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_as ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmpzed5lfjb.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmpzed5lfjb.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # const gchar *const *arg_arg_ao, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectBoxedFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_boxed (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_ao_IN_ARG_arg_ao = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_ao", 789s # (gchar *) "ao", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_ao_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_ao_IN_ARG_arg_ao.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_ao = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAo", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_ao_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-ao", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_ao.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_ao ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_ao: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-ao signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-ao: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_ao: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAo() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-ao", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_ao), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_ao, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRV); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ao: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_ao: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAo() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_ao_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_ao_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_ao ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *const *arg_arg_ao, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAo", 789s # g_variant_new ("(^ao)", 789s # arg_arg_ao), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ao_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_ao(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_ao(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_ao_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ao_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_ao: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAo() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_ao() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_ao_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *const *arg_arg_ao, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAo", 789s # g_variant_new ("(^ao)", 789s # arg_arg_ao), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_ao: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_ao ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmp9pjn699v.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmp9pjn699v.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # const gchar *const *arg_arg_aay, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectBoxedFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectBoxedFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_boxed (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_aay_IN_ARG_arg_aay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_aay", 789s # (gchar *) "aay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_aay_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_aay_IN_ARG_arg_aay.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_aay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAay", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_aay_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-aay", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_aay.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_aay ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOXED (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_aay: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-aay signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-aay: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_aay: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAay() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-aay", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_aay), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_aay, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_STRV); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_aay: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_aay: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAay() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_aay_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_aay_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_aay ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *const *arg_arg_aay, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAay", 789s # g_variant_new ("(^aay)", 789s # arg_arg_aay), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_aay_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_aay(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_aay(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_aay_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_aay_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_aay: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAay() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_aay() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_aay_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # const gchar *const *arg_arg_aay, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAay", 789s # g_variant_new ("(^aay)", 789s # arg_arg_aay), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_aay: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_aay ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmp7e2ffgme/tmp5__ar4oa.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp7e2ffgme/tmp5__ar4oa.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_VARIANT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectVariantFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # GVariant *arg_arg_asv, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectVariantFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 3); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectVariantFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_variant (param_values + 2), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_asv_IN_ARG_arg_asv = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_asv", 789s # (gchar *) "a{sv}", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_asv_IN_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_asv_IN_ARG_arg_asv.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_asv = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAsv", 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_asv_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-single-arg-method-asv", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_asv.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_asv ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_VARIANT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_asv: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-asv signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-asv: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_arg_asv: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAsv() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-asv", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_asv), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_asv, 789s # G_TYPE_BOOLEAN, 789s # 2, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_VARIANT); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_asv: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_asv: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAsv() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_asv_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_asv_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_asv ( 789s # OrgProjectUsefulInterface *proxy, 789s # GVariant *arg_arg_asv, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAsv", 789s # g_variant_new ("(@a{sv})", 789s # arg_arg_asv), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_asv_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_asv(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_asv(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_asv_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_asv_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @arg_arg_asv: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAsv() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_asv() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_asv_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # GVariant *arg_arg_asv, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAsv", 789s # g_variant_new ("(@a{sv})", 789s # arg_arg_asv), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_asv: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_asv ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s ok 11 __main__.TestCodegen.test_generate_methods_marshaller_single_typed_out_args 789s # gdbus-codegen: /usr/bin/gdbus-codegen 789s # tmpdir: /tmp/tmpd_bqsv0o 789s # /tmp/tmpd_bqsv0o/tmphmu7lgle.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmphmu7lgle.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_b_OUT_ARG_arg_b = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_b", 789s # (gchar *) "b", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_b_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_b_OUT_ARG_arg_b.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_b = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodB", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_b_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-b", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_b.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_b ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_b: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-b signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-b: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodB() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-b", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_b), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_b, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_b: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodB() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_b_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_b_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_b ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodB", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_b_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_b: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_b(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_b(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_b_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gboolean *out_arg_b, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(b)", 789s # out_arg_b); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_b_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_b: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodB() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_b() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_b_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gboolean *out_arg_b, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodB", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(b)", 789s # out_arg_b); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_b: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_b: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_b ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # gboolean arg_b) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(b)", 789s # arg_b)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmppd714j42.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmppd714j42.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_y_OUT_ARG_arg_y = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_y", 789s # (gchar *) "y", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_y_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_y_OUT_ARG_arg_y.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_y = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodY", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_y_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-y", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_y.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_y ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_y: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-y signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-y: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodY() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-y", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_y), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_y, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_y: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodY() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_y_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_y_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_y ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodY", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_y_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_y: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_y(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_y(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_y_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # guchar *out_arg_y, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(y)", 789s # out_arg_y); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_y_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_y: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodY() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_y() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_y_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # guchar *out_arg_y, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodY", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(y)", 789s # out_arg_y); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_y: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_y: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_y ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # guchar arg_y) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(y)", 789s # arg_y)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmp5gai4k72.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmp5gai4k72.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_n_OUT_ARG_arg_n = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_n", 789s # (gchar *) "n", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_n_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_n_OUT_ARG_arg_n.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_n = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodN", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_n_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-n", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_n.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_n ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_n: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-n signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-n: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodN() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-n", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_n), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_n, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_n: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodN() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_n_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_n_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_n ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodN", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_n_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_n: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_n(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_n(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_n_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint16 *out_arg_n, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(n)", 789s # out_arg_n); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_n_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_n: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodN() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_n() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_n_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint16 *out_arg_n, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodN", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(n)", 789s # out_arg_n); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_n: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_n: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_n ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # gint16 arg_n) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(n)", 789s # arg_n)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmpa7fgmmbs.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmpa7fgmmbs.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_q_OUT_ARG_arg_q = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_q", 789s # (gchar *) "q", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_q_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_q_OUT_ARG_arg_q.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_q = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodQ", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_q_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-q", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_q.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_q ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_q: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-q signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-q: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodQ() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-q", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_q), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_q, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_q: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodQ() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_q_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_q_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_q ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodQ", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_q_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_q: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_q(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_q(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_q_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint16 *out_arg_q, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(q)", 789s # out_arg_q); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_q_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_q: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodQ() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_q() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_q_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint16 *out_arg_q, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodQ", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(q)", 789s # out_arg_q); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_q: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_q: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_q ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # guint16 arg_q) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(q)", 789s # arg_q)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmp0rj6a2g7.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmp0rj6a2g7.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_i_OUT_ARG_arg_i = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_i", 789s # (gchar *) "i", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_i_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_i_OUT_ARG_arg_i.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_i = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodI", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_i_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-i", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_i.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_i ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_i: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-i signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-i: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodI() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-i", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_i), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_i, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_i: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodI() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_i_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_i_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_i ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodI", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_i_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_i: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_i(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_i(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_i_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint *out_arg_i, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(i)", 789s # out_arg_i); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_i_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_i: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodI() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_i() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_i_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint *out_arg_i, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodI", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(i)", 789s # out_arg_i); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_i: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_i: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_i ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # gint arg_i) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(i)", 789s # arg_i)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmpwas93fu2.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmpwas93fu2.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_u_OUT_ARG_arg_u = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_u", 789s # (gchar *) "u", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_u_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_u_OUT_ARG_arg_u.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_u = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodU", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_u_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-u", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_u.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_u ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_u: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-u signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-u: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodU() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-u", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_u), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_u, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_u: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodU() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_u_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_u_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_u ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodU", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_u_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_u: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_u(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_u(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_u_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint *out_arg_u, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(u)", 789s # out_arg_u); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_u_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_u: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodU() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_u() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_u_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint *out_arg_u, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodU", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(u)", 789s # out_arg_u); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_u: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_u: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_u ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # guint arg_u) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(u)", 789s # arg_u)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmpsajmpbvq.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmpsajmpbvq.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_x_OUT_ARG_arg_x = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_x", 789s # (gchar *) "x", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_x_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_x_OUT_ARG_arg_x.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_x = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodX", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_x_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-x", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_x.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_x ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_x: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-x signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-x: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodX() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-x", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_x), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_x, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_x: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodX() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_x_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_x_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_x ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodX", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_x_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_x: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_x(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_x(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_x_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint64 *out_arg_x, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(x)", 789s # out_arg_x); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_x_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_x: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodX() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_x() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_x_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gint64 *out_arg_x, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodX", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(x)", 789s # out_arg_x); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_x: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_x: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_x ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # gint64 arg_x) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(x)", 789s # arg_x)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmpjl3ns3d1.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmpjl3ns3d1.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_t_OUT_ARG_arg_t = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_t", 789s # (gchar *) "t", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_t_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_t_OUT_ARG_arg_t.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_t = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodT", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_t_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-t", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_t.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_t ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_t: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-t signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-t: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodT() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-t", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_t), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_t, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_t: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodT() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_t_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_t_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_t ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodT", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_t_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_t: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_t(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_t(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_t_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint64 *out_arg_t, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(t)", 789s # out_arg_t); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_t_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_t: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodT() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_t() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_t_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # guint64 *out_arg_t, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodT", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(t)", 789s # out_arg_t); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_t: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_t: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_t ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # guint64 arg_t) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(t)", 789s # arg_t)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmpyycs743k.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmpyycs743k.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_d_OUT_ARG_arg_d = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_d", 789s # (gchar *) "d", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_d_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_d_OUT_ARG_arg_d.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_d = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodD", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_d_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-d", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_d.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_d ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_d: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-d signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-d: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodD() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-d", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_d), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_d, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_d: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodD() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_d_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_d_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_d ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodD", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_d_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_d: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_d(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_d(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_d_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gdouble *out_arg_d, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(d)", 789s # out_arg_d); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_d_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_d: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodD() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_d() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_d_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gdouble *out_arg_d, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodD", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(d)", 789s # out_arg_d); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_d: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_d: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_d ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # gdouble arg_d) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(d)", 789s # arg_d)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmp1ugw1bfs.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmp1ugw1bfs.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_s_OUT_ARG_arg_s = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_s", 789s # (gchar *) "s", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_s_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_s_OUT_ARG_arg_s.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_s = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodS", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_s_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-s", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_s.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_s ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_s: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-s signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-s: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodS() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-s", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_s), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_s, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_s: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodS() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_s_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_s_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_s ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodS", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_s_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_s: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_s(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_s(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_s_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar **out_arg_s, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(s)", 789s # out_arg_s); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_s_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_s: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodS() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_s() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_s_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar **out_arg_s, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodS", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(s)", 789s # out_arg_s); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_s: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_s: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_s ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # const gchar *arg_s) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(s)", 789s # arg_s)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmp58968u4g.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmp58968u4g.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_o_OUT_ARG_arg_o = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_o", 789s # (gchar *) "o", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_o_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_o_OUT_ARG_arg_o.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_o = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodO", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_o_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-o", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_o.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_o ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_o: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-o signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-o: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodO() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-o", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_o), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_o, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_o: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodO() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_o_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_o_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_o ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodO", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_o_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_o: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_o(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_o(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_o_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar **out_arg_o, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(o)", 789s # out_arg_o); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_o_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_o: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodO() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_o() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_o_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar **out_arg_o, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodO", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(o)", 789s # out_arg_o); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_o: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_o: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_o ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # const gchar *arg_o) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(o)", 789s # arg_o)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmp_cpw10zg.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmp_cpw10zg.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_g_OUT_ARG_arg_g = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_g", 789s # (gchar *) "g", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_g_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_g_OUT_ARG_arg_g.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_g = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodG", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_g_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-g", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_g.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_g ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_g: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-g signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-g: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodG() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-g", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_g), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_g, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_g: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodG() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_g_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_g_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_g ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodG", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_g_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_g: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_g(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_g(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_g_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar **out_arg_g, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(g)", 789s # out_arg_g); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_g_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_g: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodG() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_g() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_g_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar **out_arg_g, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodG", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(g)", 789s # out_arg_g); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_g: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_g: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_g ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # const gchar *arg_g) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(g)", 789s # arg_g)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmpsa9_qzed.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmpsa9_qzed.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_h_OUT_ARG_arg_h = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_h", 789s # (gchar *) "h", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_h_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_h_OUT_ARG_arg_h.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_h = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodH", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_h_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-h", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_h.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_h ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_h: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-h signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-h: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodH() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-h", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_h), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_h, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_h: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodH() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_h_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_h_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_h ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodH", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_h_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_h: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_h(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_h(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_h_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GVariant **out_arg_h, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(@h)", 789s # out_arg_h); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_h_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_h: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodH() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_h() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_h_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # GVariant **out_arg_h, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodH", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(@h)", 789s # out_arg_h); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_h: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_h: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_h ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # GVariant *arg_h) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(@h)", 789s # arg_h)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmp8th7n9v9.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmp8th7n9v9.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_ay_OUT_ARG_arg_ay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_ay", 789s # (gchar *) "ay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_ay_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_ay_OUT_ARG_arg_ay.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_ay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAy", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_ay_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-ay", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_ay.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_ay ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_ay: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-ay signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-ay: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAy() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-ay", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_ay), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_ay, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ay: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAy() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_ay_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_ay_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_ay ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAy", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ay_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_ay: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_ay(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_ay(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_ay_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar **out_arg_ay, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(^ay)", 789s # out_arg_ay); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ay_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_ay: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAy() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_ay() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_ay_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar **out_arg_ay, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAy", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(^ay)", 789s # out_arg_ay); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_ay: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_ay: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_ay ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # const gchar *arg_ay) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(^ay)", 789s # arg_ay)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmp8x1inzi1.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmp8x1inzi1.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_as_OUT_ARG_arg_as = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_as", 789s # (gchar *) "as", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_as_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_as_OUT_ARG_arg_as.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_as = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAs", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_as_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-as", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_as.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_as ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_as: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-as signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-as: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAs() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-as", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_as), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_as, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_as: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAs() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_as_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_as_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_as ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAs", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_as_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_as: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_as(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_as(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_as_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar ***out_arg_as, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(^as)", 789s # out_arg_as); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_as_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_as: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_as() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_as_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar ***out_arg_as, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAs", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(^as)", 789s # out_arg_as); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_as: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_as: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_as ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # const gchar *const *arg_as) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(^as)", 789s # arg_as)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmpzafza5ug.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmpzafza5ug.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_ao_OUT_ARG_arg_ao = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_ao", 789s # (gchar *) "ao", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_ao_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_ao_OUT_ARG_arg_ao.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_ao = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAo", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_ao_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-ao", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_ao.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_ao ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_ao: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-ao signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-ao: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAo() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-ao", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_ao), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_ao, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ao: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAo() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_ao_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_ao_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_ao ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAo", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ao_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_ao: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_ao(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_ao(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_ao_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar ***out_arg_ao, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(^ao)", 789s # out_arg_ao); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_ao_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_ao: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAo() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_ao() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_ao_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar ***out_arg_ao, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAo", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(^ao)", 789s # out_arg_ao); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_ao: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_ao: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_ao ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # const gchar *const *arg_ao) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(^ao)", 789s # arg_ao)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmpsr6ns8bc.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmpsr6ns8bc.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_aay_OUT_ARG_arg_aay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_aay", 789s # (gchar *) "aay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_aay_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_aay_OUT_ARG_arg_aay.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_aay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAay", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_aay_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-aay", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_aay.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_aay ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_aay: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-aay signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-aay: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAay() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-aay", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_aay), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_aay, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_aay: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAay() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_aay_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_aay_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_aay ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAay", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_aay_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_aay: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_aay(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_aay(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_aay_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar ***out_arg_aay, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(^aay)", 789s # out_arg_aay); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_aay_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_aay: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAay() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_aay() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_aay_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # gchar ***out_arg_aay, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAay", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(^aay)", 789s # out_arg_aay); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_aay: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_aay: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_aay ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # const gchar *const *arg_aay) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(^aay)", 789s # arg_aay)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s # 789s # /tmp/tmpd_bqsv0o/tmp641rcigt.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpd_bqsv0o/tmp641rcigt.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.UsefulInterface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectUsefulInterface 789s # * @title: OrgProjectUsefulInterface 789s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_useful_interface_method_info_single_arg_method_asv_OUT_ARG_arg_asv = 789s # { 789s # { 789s # -1, 789s # (gchar *) "arg_asv", 789s # (gchar *) "a{sv}", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_useful_interface_method_info_single_arg_method_asv_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_asv_OUT_ARG_arg_asv.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_useful_interface_method_info_single_arg_method_asv = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SingleArgMethodAsv", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_useful_interface_method_info_single_arg_method_asv_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-single-arg-method-asv", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_useful_interface_method_info_pointers[] = 789s # { 789s # &_org_project_useful_interface_method_info_single_arg_method_asv.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.UsefulInterface", 789s # (GDBusMethodInfo **) &_org_project_useful_interface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-useful-interface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_useful_interface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_useful_interface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_useful_interface_method_marshal_single_arg_method_asv ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectUsefulInterface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_single_arg_method_asv: Handler for the #OrgProjectUsefulInterface::handle-single-arg-method-asv signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 789s # */ 789s # 789s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectUsefulInterface::handle-single-arg-method-asv: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the SingleArgMethodAsv() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-single-arg-method-asv", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, handle_single_arg_method_asv), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_useful_interface_method_marshal_single_arg_method_asv, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_asv: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SingleArgMethodAsv() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_useful_interface_call_single_arg_method_asv_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_asv_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_useful_interface_call_single_arg_method_asv ( 789s # OrgProjectUsefulInterface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAsv", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_asv_finish: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_asv: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_call_single_arg_method_asv(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_useful_interface_call_single_arg_method_asv(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_asv_finish ( 789s # OrgProjectUsefulInterface *proxy, 789s # GVariant **out_arg_asv, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(@a{sv})", 789s # out_arg_asv); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_call_single_arg_method_asv_sync: 789s # * @proxy: A #OrgProjectUsefulInterfaceProxy. 789s # * @out_arg_asv: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SingleArgMethodAsv() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_call_single_arg_method_asv() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_useful_interface_call_single_arg_method_asv_sync ( 789s # OrgProjectUsefulInterface *proxy, 789s # GVariant **out_arg_asv, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SingleArgMethodAsv", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(@a{sv})", 789s # out_arg_asv); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_complete_single_arg_method_asv: 789s # * @object: A #OrgProjectUsefulInterface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @arg_asv: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_useful_interface_complete_single_arg_method_asv ( 789s # OrgProjectUsefulInterface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # GVariant *arg_asv) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(@a{sv})", 789s # arg_asv)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxy: 789s # * 789s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 789s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 789s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_useful_interface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeleton: 789s # * 789s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectUsefulInterfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_useful_interface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_useful_interface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_useful_interface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 789s # { 789s # _org_project_useful_interface_skeleton_handle_method_call, 789s # _org_project_useful_interface_skeleton_handle_get_property, 789s # _org_project_useful_interface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_useful_interface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_useful_interface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_useful_interface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectUsefulInterface * 789s # org_project_useful_interface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s ok 12 __main__.TestCodegen.test_generate_methods_marshallers_multiple_in_args 789s # gdbus-codegen: /usr/bin/gdbus-codegen 789s # tmpdir: /tmp/tmparibucyl 789s # /tmp/tmparibucyl/tmp1q9ykcoe.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmparibucyl/tmp1q9ykcoe.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectBooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # gboolean arg_an_b, 789s # guchar arg_an_y, 789s # gint16 arg_an_n, 789s # guint16 arg_an_q, 789s # gint arg_an_i, 789s # guint arg_an_u, 789s # gint64 arg_an_x, 789s # guint64 arg_an_t, 789s # gdouble arg_an_d, 789s # const gchar *arg_an_s, 789s # const gchar *arg_an_o, 789s # const gchar *arg_an_g, 789s # GVariant *arg_an_h, 789s # const gchar *arg_an_ay, 789s # const gchar *const *arg_an_as, 789s # const gchar *const *arg_an_ao, 789s # const gchar *const *arg_an_aay, 789s # GVariant *arg_an_asv, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectBooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 20); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectBooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_boolean (param_values + 2), 789s # g_marshal_value_peek_uchar (param_values + 3), 789s # g_marshal_value_peek_int (param_values + 4), 789s # g_marshal_value_peek_uint (param_values + 5), 789s # g_marshal_value_peek_int (param_values + 6), 789s # g_marshal_value_peek_uint (param_values + 7), 789s # g_marshal_value_peek_int64 (param_values + 8), 789s # g_marshal_value_peek_uint64 (param_values + 9), 789s # g_marshal_value_peek_double (param_values + 10), 789s # g_marshal_value_peek_string (param_values + 11), 789s # g_marshal_value_peek_string (param_values + 12), 789s # g_marshal_value_peek_string (param_values + 13), 789s # g_marshal_value_peek_variant (param_values + 14), 789s # g_marshal_value_peek_string (param_values + 15), 789s # g_marshal_value_peek_boxed (param_values + 16), 789s # g_marshal_value_peek_boxed (param_values + 17), 789s # g_marshal_value_peek_boxed (param_values + 18), 789s # g_marshal_value_peek_variant (param_values + 19), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.CallableIface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectCallableIface 789s # * @title: OrgProjectCallableIface 789s # * @short_description: Generated C code for the org.project.CallableIface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.CallableIface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.CallableIface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_b = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_b", 789s # (gchar *) "b", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_y = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_y", 789s # (gchar *) "y", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_n = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_n", 789s # (gchar *) "n", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_q = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_q", 789s # (gchar *) "q", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_i = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_i", 789s # (gchar *) "i", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_u = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_u", 789s # (gchar *) "u", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_x = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_x", 789s # (gchar *) "x", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_t = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_t", 789s # (gchar *) "t", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_d = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_d", 789s # (gchar *) "d", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_s = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_s", 789s # (gchar *) "s", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_o = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_o", 789s # (gchar *) "o", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_g = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_g", 789s # (gchar *) "g", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_h = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_h", 789s # (gchar *) "h", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_ay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_ay", 789s # (gchar *) "ay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_as = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_as", 789s # (gchar *) "as", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_ao = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_ao", 789s # (gchar *) "ao", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_aay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_aay", 789s # (gchar *) "aay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_asv = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_asv", 789s # (gchar *) "a{sv}", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_callable_iface_method_info_method_with_many_args_IN_ARG_pointers[] = 789s # { 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_b.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_y.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_n.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_q.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_i.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_u.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_x.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_t.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_d.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_s.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_o.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_g.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_h.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_ay.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_as.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_ao.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_aay.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_an_asv.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_callable_iface_method_info_method_with_many_args = 789s # { 789s # { 789s # -1, 789s # (gchar *) "MethodWithManyArgs", 789s # (GDBusArgInfo **) &_org_project_callable_iface_method_info_method_with_many_args_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-method-with-many-args", 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_b = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_b", 789s # (gchar *) "b", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_y = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_y", 789s # (gchar *) "y", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_n = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_n", 789s # (gchar *) "n", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_q = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_q", 789s # (gchar *) "q", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_i = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_i", 789s # (gchar *) "i", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_u = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_u", 789s # (gchar *) "u", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_x = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_x", 789s # (gchar *) "x", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_t = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_t", 789s # (gchar *) "t", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_d = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_d", 789s # (gchar *) "d", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_s = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_s", 789s # (gchar *) "s", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_o = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_o", 789s # (gchar *) "o", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_g = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_g", 789s # (gchar *) "g", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_h = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_h", 789s # (gchar *) "h", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_ay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_ay", 789s # (gchar *) "ay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_as = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_as", 789s # (gchar *) "as", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_ao = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_ao", 789s # (gchar *) "ao", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_aay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_aay", 789s # (gchar *) "aay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_asv = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_asv", 789s # (gchar *) "a{sv}", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_pointers[] = 789s # { 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_b.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_y.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_n.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_q.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_i.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_u.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_x.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_t.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_d.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_s.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_o.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_g.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_h.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_ay.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_as.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_ao.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_aay.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_an_asv.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_callable_iface_method_info_same_method_with_many_args = 789s # { 789s # { 789s # -1, 789s # (gchar *) "SameMethodWithManyArgs", 789s # (GDBusArgInfo **) &_org_project_callable_iface_method_info_same_method_with_many_args_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-same-method-with-many-args", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_callable_iface_method_info_pointers[] = 789s # { 789s # &_org_project_callable_iface_method_info_method_with_many_args.parent_struct, 789s # &_org_project_callable_iface_method_info_same_method_with_many_args.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_callable_iface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.CallableIface", 789s # (GDBusMethodInfo **) &_org_project_callable_iface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-callable-iface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_callable_iface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.CallableIface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_callable_iface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectCallableIface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_callable_iface_method_marshal_method_with_many_args ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _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, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # inline static void 789s # org_project_callable_iface_method_marshal_same_method_with_many_args ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _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, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectCallableIface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.CallableIface. 789s # */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_method_with_many_args: Handler for the #OrgProjectCallableIface::handle-method-with-many-args signal. 789s # * @handle_same_method_with_many_args: Handler for the #OrgProjectCallableIface::handle-same-method-with-many-args signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.CallableIface. 789s # */ 789s # 789s # typedef OrgProjectCallableIfaceIface OrgProjectCallableIfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectCallableIface, org_project_callable_iface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_callable_iface_default_init (OrgProjectCallableIfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectCallableIface::handle-method-with-many-args: 789s # * @object: A #OrgProjectCallableIface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_an_b: Argument passed by remote caller. 789s # * @arg_an_y: Argument passed by remote caller. 789s # * @arg_an_n: Argument passed by remote caller. 789s # * @arg_an_q: Argument passed by remote caller. 789s # * @arg_an_i: Argument passed by remote caller. 789s # * @arg_an_u: Argument passed by remote caller. 789s # * @arg_an_x: Argument passed by remote caller. 789s # * @arg_an_t: Argument passed by remote caller. 789s # * @arg_an_d: Argument passed by remote caller. 789s # * @arg_an_s: Argument passed by remote caller. 789s # * @arg_an_o: Argument passed by remote caller. 789s # * @arg_an_g: Argument passed by remote caller. 789s # * @arg_an_h: Argument passed by remote caller. 789s # * @arg_an_ay: Argument passed by remote caller. 789s # * @arg_an_as: Argument passed by remote caller. 789s # * @arg_an_ao: Argument passed by remote caller. 789s # * @arg_an_aay: Argument passed by remote caller. 789s # * @arg_an_asv: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the MethodWithManyArgs() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-method-with-many-args", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectCallableIfaceIface, handle_method_with_many_args), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_callable_iface_method_marshal_method_with_many_args, 789s # G_TYPE_BOOLEAN, 789s # 19, 789s # 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); 789s # 789s # /** 789s # * OrgProjectCallableIface::handle-same-method-with-many-args: 789s # * @object: A #OrgProjectCallableIface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_an_b: Argument passed by remote caller. 789s # * @arg_an_y: Argument passed by remote caller. 789s # * @arg_an_n: Argument passed by remote caller. 789s # * @arg_an_q: Argument passed by remote caller. 789s # * @arg_an_i: Argument passed by remote caller. 789s # * @arg_an_u: Argument passed by remote caller. 789s # * @arg_an_x: Argument passed by remote caller. 789s # * @arg_an_t: Argument passed by remote caller. 789s # * @arg_an_d: Argument passed by remote caller. 789s # * @arg_an_s: Argument passed by remote caller. 789s # * @arg_an_o: Argument passed by remote caller. 789s # * @arg_an_g: Argument passed by remote caller. 789s # * @arg_an_h: Argument passed by remote caller. 789s # * @arg_an_ay: Argument passed by remote caller. 789s # * @arg_an_as: Argument passed by remote caller. 789s # * @arg_an_ao: Argument passed by remote caller. 789s # * @arg_an_aay: Argument passed by remote caller. 789s # * @arg_an_asv: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the SameMethodWithManyArgs() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-same-method-with-many-args", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectCallableIfaceIface, handle_same_method_with_many_args), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_callable_iface_method_marshal_same_method_with_many_args, 789s # G_TYPE_BOOLEAN, 789s # 19, 789s # 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); 789s # 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_call_method_with_many_args: 789s # * @proxy: A #OrgProjectCallableIfaceProxy. 789s # * @arg_an_b: Argument to pass with the method invocation. 789s # * @arg_an_y: Argument to pass with the method invocation. 789s # * @arg_an_n: Argument to pass with the method invocation. 789s # * @arg_an_q: Argument to pass with the method invocation. 789s # * @arg_an_i: Argument to pass with the method invocation. 789s # * @arg_an_u: Argument to pass with the method invocation. 789s # * @arg_an_x: Argument to pass with the method invocation. 789s # * @arg_an_t: Argument to pass with the method invocation. 789s # * @arg_an_d: Argument to pass with the method invocation. 789s # * @arg_an_s: Argument to pass with the method invocation. 789s # * @arg_an_o: Argument to pass with the method invocation. 789s # * @arg_an_g: Argument to pass with the method invocation. 789s # * @arg_an_h: Argument to pass with the method invocation. 789s # * @arg_an_ay: Argument to pass with the method invocation. 789s # * @arg_an_as: Argument to pass with the method invocation. 789s # * @arg_an_ao: Argument to pass with the method invocation. 789s # * @arg_an_aay: Argument to pass with the method invocation. 789s # * @arg_an_asv: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_callable_iface_call_method_with_many_args_finish() to get the result of the operation. 789s # * 789s # * See org_project_callable_iface_call_method_with_many_args_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_callable_iface_call_method_with_many_args ( 789s # OrgProjectCallableIface *proxy, 789s # gboolean arg_an_b, 789s # guchar arg_an_y, 789s # gint16 arg_an_n, 789s # guint16 arg_an_q, 789s # gint arg_an_i, 789s # guint arg_an_u, 789s # gint64 arg_an_x, 789s # guint64 arg_an_t, 789s # gdouble arg_an_d, 789s # const gchar *arg_an_s, 789s # const gchar *arg_an_o, 789s # const gchar *arg_an_g, 789s # GVariant *arg_an_h, 789s # const gchar *arg_an_ay, 789s # const gchar *const *arg_an_as, 789s # const gchar *const *arg_an_ao, 789s # const gchar *const *arg_an_aay, 789s # GVariant *arg_an_asv, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "MethodWithManyArgs", 789s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 789s # arg_an_b, 789s # arg_an_y, 789s # arg_an_n, 789s # arg_an_q, 789s # arg_an_i, 789s # arg_an_u, 789s # arg_an_x, 789s # arg_an_t, 789s # arg_an_d, 789s # arg_an_s, 789s # arg_an_o, 789s # arg_an_g, 789s # arg_an_h, 789s # arg_an_ay, 789s # arg_an_as, 789s # arg_an_ao, 789s # arg_an_aay, 789s # arg_an_asv), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_call_method_with_many_args_finish: 789s # * @proxy: A #OrgProjectCallableIfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_call_method_with_many_args(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_callable_iface_call_method_with_many_args(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_callable_iface_call_method_with_many_args_finish ( 789s # OrgProjectCallableIface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_call_method_with_many_args_sync: 789s # * @proxy: A #OrgProjectCallableIfaceProxy. 789s # * @arg_an_b: Argument to pass with the method invocation. 789s # * @arg_an_y: Argument to pass with the method invocation. 789s # * @arg_an_n: Argument to pass with the method invocation. 789s # * @arg_an_q: Argument to pass with the method invocation. 789s # * @arg_an_i: Argument to pass with the method invocation. 789s # * @arg_an_u: Argument to pass with the method invocation. 789s # * @arg_an_x: Argument to pass with the method invocation. 789s # * @arg_an_t: Argument to pass with the method invocation. 789s # * @arg_an_d: Argument to pass with the method invocation. 789s # * @arg_an_s: Argument to pass with the method invocation. 789s # * @arg_an_o: Argument to pass with the method invocation. 789s # * @arg_an_g: Argument to pass with the method invocation. 789s # * @arg_an_h: Argument to pass with the method invocation. 789s # * @arg_an_ay: Argument to pass with the method invocation. 789s # * @arg_an_as: Argument to pass with the method invocation. 789s # * @arg_an_ao: Argument to pass with the method invocation. 789s # * @arg_an_aay: Argument to pass with the method invocation. 789s # * @arg_an_asv: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_callable_iface_call_method_with_many_args() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_callable_iface_call_method_with_many_args_sync ( 789s # OrgProjectCallableIface *proxy, 789s # gboolean arg_an_b, 789s # guchar arg_an_y, 789s # gint16 arg_an_n, 789s # guint16 arg_an_q, 789s # gint arg_an_i, 789s # guint arg_an_u, 789s # gint64 arg_an_x, 789s # guint64 arg_an_t, 789s # gdouble arg_an_d, 789s # const gchar *arg_an_s, 789s # const gchar *arg_an_o, 789s # const gchar *arg_an_g, 789s # GVariant *arg_an_h, 789s # const gchar *arg_an_ay, 789s # const gchar *const *arg_an_as, 789s # const gchar *const *arg_an_ao, 789s # const gchar *const *arg_an_aay, 789s # GVariant *arg_an_asv, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "MethodWithManyArgs", 789s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 789s # arg_an_b, 789s # arg_an_y, 789s # arg_an_n, 789s # arg_an_q, 789s # arg_an_i, 789s # arg_an_u, 789s # arg_an_x, 789s # arg_an_t, 789s # arg_an_d, 789s # arg_an_s, 789s # arg_an_o, 789s # arg_an_g, 789s # arg_an_h, 789s # arg_an_ay, 789s # arg_an_as, 789s # arg_an_ao, 789s # arg_an_aay, 789s # arg_an_asv), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_call_same_method_with_many_args: 789s # * @proxy: A #OrgProjectCallableIfaceProxy. 789s # * @arg_an_b: Argument to pass with the method invocation. 789s # * @arg_an_y: Argument to pass with the method invocation. 789s # * @arg_an_n: Argument to pass with the method invocation. 789s # * @arg_an_q: Argument to pass with the method invocation. 789s # * @arg_an_i: Argument to pass with the method invocation. 789s # * @arg_an_u: Argument to pass with the method invocation. 789s # * @arg_an_x: Argument to pass with the method invocation. 789s # * @arg_an_t: Argument to pass with the method invocation. 789s # * @arg_an_d: Argument to pass with the method invocation. 789s # * @arg_an_s: Argument to pass with the method invocation. 789s # * @arg_an_o: Argument to pass with the method invocation. 789s # * @arg_an_g: Argument to pass with the method invocation. 789s # * @arg_an_h: Argument to pass with the method invocation. 789s # * @arg_an_ay: Argument to pass with the method invocation. 789s # * @arg_an_as: Argument to pass with the method invocation. 789s # * @arg_an_ao: Argument to pass with the method invocation. 789s # * @arg_an_aay: Argument to pass with the method invocation. 789s # * @arg_an_asv: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the SameMethodWithManyArgs() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_callable_iface_call_same_method_with_many_args_finish() to get the result of the operation. 789s # * 789s # * See org_project_callable_iface_call_same_method_with_many_args_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_callable_iface_call_same_method_with_many_args ( 789s # OrgProjectCallableIface *proxy, 789s # gboolean arg_an_b, 789s # guchar arg_an_y, 789s # gint16 arg_an_n, 789s # guint16 arg_an_q, 789s # gint arg_an_i, 789s # guint arg_an_u, 789s # gint64 arg_an_x, 789s # guint64 arg_an_t, 789s # gdouble arg_an_d, 789s # const gchar *arg_an_s, 789s # const gchar *arg_an_o, 789s # const gchar *arg_an_g, 789s # GVariant *arg_an_h, 789s # const gchar *arg_an_ay, 789s # const gchar *const *arg_an_as, 789s # const gchar *const *arg_an_ao, 789s # const gchar *const *arg_an_aay, 789s # GVariant *arg_an_asv, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "SameMethodWithManyArgs", 789s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 789s # arg_an_b, 789s # arg_an_y, 789s # arg_an_n, 789s # arg_an_q, 789s # arg_an_i, 789s # arg_an_u, 789s # arg_an_x, 789s # arg_an_t, 789s # arg_an_d, 789s # arg_an_s, 789s # arg_an_o, 789s # arg_an_g, 789s # arg_an_h, 789s # arg_an_ay, 789s # arg_an_as, 789s # arg_an_ao, 789s # arg_an_aay, 789s # arg_an_asv), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_call_same_method_with_many_args_finish: 789s # * @proxy: A #OrgProjectCallableIfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_call_same_method_with_many_args(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_callable_iface_call_same_method_with_many_args(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_callable_iface_call_same_method_with_many_args_finish ( 789s # OrgProjectCallableIface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_call_same_method_with_many_args_sync: 789s # * @proxy: A #OrgProjectCallableIfaceProxy. 789s # * @arg_an_b: Argument to pass with the method invocation. 789s # * @arg_an_y: Argument to pass with the method invocation. 789s # * @arg_an_n: Argument to pass with the method invocation. 789s # * @arg_an_q: Argument to pass with the method invocation. 789s # * @arg_an_i: Argument to pass with the method invocation. 789s # * @arg_an_u: Argument to pass with the method invocation. 789s # * @arg_an_x: Argument to pass with the method invocation. 789s # * @arg_an_t: Argument to pass with the method invocation. 789s # * @arg_an_d: Argument to pass with the method invocation. 789s # * @arg_an_s: Argument to pass with the method invocation. 789s # * @arg_an_o: Argument to pass with the method invocation. 789s # * @arg_an_g: Argument to pass with the method invocation. 789s # * @arg_an_h: Argument to pass with the method invocation. 789s # * @arg_an_ay: Argument to pass with the method invocation. 789s # * @arg_an_as: Argument to pass with the method invocation. 789s # * @arg_an_ao: Argument to pass with the method invocation. 789s # * @arg_an_aay: Argument to pass with the method invocation. 789s # * @arg_an_asv: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the SameMethodWithManyArgs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_callable_iface_call_same_method_with_many_args() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_callable_iface_call_same_method_with_many_args_sync ( 789s # OrgProjectCallableIface *proxy, 789s # gboolean arg_an_b, 789s # guchar arg_an_y, 789s # gint16 arg_an_n, 789s # guint16 arg_an_q, 789s # gint arg_an_i, 789s # guint arg_an_u, 789s # gint64 arg_an_x, 789s # guint64 arg_an_t, 789s # gdouble arg_an_d, 789s # const gchar *arg_an_s, 789s # const gchar *arg_an_o, 789s # const gchar *arg_an_g, 789s # GVariant *arg_an_h, 789s # const gchar *arg_an_ay, 789s # const gchar *const *arg_an_as, 789s # const gchar *const *arg_an_ao, 789s # const gchar *const *arg_an_aay, 789s # GVariant *arg_an_asv, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "SameMethodWithManyArgs", 789s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 789s # arg_an_b, 789s # arg_an_y, 789s # arg_an_n, 789s # arg_an_q, 789s # arg_an_i, 789s # arg_an_u, 789s # arg_an_x, 789s # arg_an_t, 789s # arg_an_d, 789s # arg_an_s, 789s # arg_an_o, 789s # arg_an_g, 789s # arg_an_h, 789s # arg_an_ay, 789s # arg_an_as, 789s # arg_an_ao, 789s # arg_an_aay, 789s # arg_an_asv), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_complete_method_with_many_args: 789s # * @object: A #OrgProjectCallableIface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_callable_iface_complete_method_with_many_args ( 789s # OrgProjectCallableIface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_complete_same_method_with_many_args: 789s # * @object: A #OrgProjectCallableIface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_callable_iface_complete_same_method_with_many_args ( 789s # OrgProjectCallableIface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceProxy: 789s # * 789s # * The #OrgProjectCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectCallableIfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectCallableIfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectCallableIfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_callable_iface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_callable_iface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_CALLABLE_IFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_init (OrgProjectCallableIfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_callable_iface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, OrgProjectCallableIfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_callable_iface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_class_init (OrgProjectCallableIfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_callable_iface_proxy_finalize; 789s # gobject_class->get_property = org_project_callable_iface_proxy_get_property; 789s # gobject_class->set_property = org_project_callable_iface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_callable_iface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_callable_iface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_callable_iface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_callable_iface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_callable_iface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_callable_iface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_callable_iface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_callable_iface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceSkeleton: 789s # * 789s # * The #OrgProjectCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectCallableIfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectCallableIfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_callable_iface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_CALLABLE_IFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_callable_iface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_callable_iface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_callable_iface_skeleton_vtable = 789s # { 789s # _org_project_callable_iface_skeleton_handle_method_call, 789s # _org_project_callable_iface_skeleton_handle_get_property, 789s # _org_project_callable_iface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_callable_iface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_callable_iface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_callable_iface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_callable_iface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectCallableIfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_callable_iface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_callable_iface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_skeleton_init (OrgProjectCallableIfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_callable_iface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, OrgProjectCallableIfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_skeleton_class_init (OrgProjectCallableIfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_callable_iface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_callable_iface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_callable_iface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_callable_iface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_callable_iface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.CallableIface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, NULL)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.OtherCallableIface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectOtherCallableIface 789s # * @title: OrgProjectOtherCallableIface 789s # * @short_description: Generated C code for the org.project.OtherCallableIface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.OtherCallableIface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.OtherCallableIface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_b = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_b", 789s # (gchar *) "b", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_y = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_y", 789s # (gchar *) "y", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_n = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_n", 789s # (gchar *) "n", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_q = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_q", 789s # (gchar *) "q", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_i = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_i", 789s # (gchar *) "i", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_u = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_u", 789s # (gchar *) "u", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_x = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_x", 789s # (gchar *) "x", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_t = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_t", 789s # (gchar *) "t", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_d = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_d", 789s # (gchar *) "d", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_s = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_s", 789s # (gchar *) "s", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_o = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_o", 789s # (gchar *) "o", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_g = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_g", 789s # (gchar *) "g", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_h = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_h", 789s # (gchar *) "h", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_ay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_ay", 789s # (gchar *) "ay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_as = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_as", 789s # (gchar *) "as", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_ao = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_ao", 789s # (gchar *) "ao", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_aay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_aay", 789s # (gchar *) "aay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_asv = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_asv", 789s # (gchar *) "a{sv}", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_pointers[] = 789s # { 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_b.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_y.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_n.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_q.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_i.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_u.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_x.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_t.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_d.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_s.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_o.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_g.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_h.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_ay.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_as.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_ao.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_aay.parent_struct, 789s # &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_an_asv.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_other_callable_iface_method_info_method_with_many_args = 789s # { 789s # { 789s # -1, 789s # (gchar *) "MethodWithManyArgs", 789s # (GDBusArgInfo **) &_org_project_other_callable_iface_method_info_method_with_many_args_IN_ARG_pointers, 789s # NULL, 789s # NULL 789s # }, 789s # "handle-method-with-many-args", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_other_callable_iface_method_info_pointers[] = 789s # { 789s # &_org_project_other_callable_iface_method_info_method_with_many_args.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_other_callable_iface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.OtherCallableIface", 789s # (GDBusMethodInfo **) &_org_project_other_callable_iface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-other-callable-iface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_other_callable_iface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.OtherCallableIface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_other_callable_iface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectOtherCallableIface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_other_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_other_callable_iface_method_marshal_method_with_many_args ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _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, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectOtherCallableIface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.OtherCallableIface. 789s # */ 789s # 789s # /** 789s # * OrgProjectOtherCallableIfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_method_with_many_args: Handler for the #OrgProjectOtherCallableIface::handle-method-with-many-args signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.OtherCallableIface. 789s # */ 789s # 789s # typedef OrgProjectOtherCallableIfaceIface OrgProjectOtherCallableIfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectOtherCallableIface, org_project_other_callable_iface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_other_callable_iface_default_init (OrgProjectOtherCallableIfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectOtherCallableIface::handle-method-with-many-args: 789s # * @object: A #OrgProjectOtherCallableIface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @arg_an_b: Argument passed by remote caller. 789s # * @arg_an_y: Argument passed by remote caller. 789s # * @arg_an_n: Argument passed by remote caller. 789s # * @arg_an_q: Argument passed by remote caller. 789s # * @arg_an_i: Argument passed by remote caller. 789s # * @arg_an_u: Argument passed by remote caller. 789s # * @arg_an_x: Argument passed by remote caller. 789s # * @arg_an_t: Argument passed by remote caller. 789s # * @arg_an_d: Argument passed by remote caller. 789s # * @arg_an_s: Argument passed by remote caller. 789s # * @arg_an_o: Argument passed by remote caller. 789s # * @arg_an_g: Argument passed by remote caller. 789s # * @arg_an_h: Argument passed by remote caller. 789s # * @arg_an_ay: Argument passed by remote caller. 789s # * @arg_an_as: Argument passed by remote caller. 789s # * @arg_an_ao: Argument passed by remote caller. 789s # * @arg_an_aay: Argument passed by remote caller. 789s # * @arg_an_asv: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the MethodWithManyArgs() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-method-with-many-args", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectOtherCallableIfaceIface, handle_method_with_many_args), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_other_callable_iface_method_marshal_method_with_many_args, 789s # G_TYPE_BOOLEAN, 789s # 19, 789s # 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); 789s # 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_call_method_with_many_args: 789s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 789s # * @arg_an_b: Argument to pass with the method invocation. 789s # * @arg_an_y: Argument to pass with the method invocation. 789s # * @arg_an_n: Argument to pass with the method invocation. 789s # * @arg_an_q: Argument to pass with the method invocation. 789s # * @arg_an_i: Argument to pass with the method invocation. 789s # * @arg_an_u: Argument to pass with the method invocation. 789s # * @arg_an_x: Argument to pass with the method invocation. 789s # * @arg_an_t: Argument to pass with the method invocation. 789s # * @arg_an_d: Argument to pass with the method invocation. 789s # * @arg_an_s: Argument to pass with the method invocation. 789s # * @arg_an_o: Argument to pass with the method invocation. 789s # * @arg_an_g: Argument to pass with the method invocation. 789s # * @arg_an_h: Argument to pass with the method invocation. 789s # * @arg_an_ay: Argument to pass with the method invocation. 789s # * @arg_an_as: Argument to pass with the method invocation. 789s # * @arg_an_ao: Argument to pass with the method invocation. 789s # * @arg_an_aay: Argument to pass with the method invocation. 789s # * @arg_an_asv: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_other_callable_iface_call_method_with_many_args_finish() to get the result of the operation. 789s # * 789s # * See org_project_other_callable_iface_call_method_with_many_args_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_other_callable_iface_call_method_with_many_args ( 789s # OrgProjectOtherCallableIface *proxy, 789s # gboolean arg_an_b, 789s # guchar arg_an_y, 789s # gint16 arg_an_n, 789s # guint16 arg_an_q, 789s # gint arg_an_i, 789s # guint arg_an_u, 789s # gint64 arg_an_x, 789s # guint64 arg_an_t, 789s # gdouble arg_an_d, 789s # const gchar *arg_an_s, 789s # const gchar *arg_an_o, 789s # const gchar *arg_an_g, 789s # GVariant *arg_an_h, 789s # const gchar *arg_an_ay, 789s # const gchar *const *arg_an_as, 789s # const gchar *const *arg_an_ao, 789s # const gchar *const *arg_an_aay, 789s # GVariant *arg_an_asv, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "MethodWithManyArgs", 789s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 789s # arg_an_b, 789s # arg_an_y, 789s # arg_an_n, 789s # arg_an_q, 789s # arg_an_i, 789s # arg_an_u, 789s # arg_an_x, 789s # arg_an_t, 789s # arg_an_d, 789s # arg_an_s, 789s # arg_an_o, 789s # arg_an_g, 789s # arg_an_h, 789s # arg_an_ay, 789s # arg_an_as, 789s # arg_an_ao, 789s # arg_an_aay, 789s # arg_an_asv), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_call_method_with_many_args_finish: 789s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_call_method_with_many_args(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_other_callable_iface_call_method_with_many_args(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_other_callable_iface_call_method_with_many_args_finish ( 789s # OrgProjectOtherCallableIface *proxy, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_call_method_with_many_args_sync: 789s # * @proxy: A #OrgProjectOtherCallableIfaceProxy. 789s # * @arg_an_b: Argument to pass with the method invocation. 789s # * @arg_an_y: Argument to pass with the method invocation. 789s # * @arg_an_n: Argument to pass with the method invocation. 789s # * @arg_an_q: Argument to pass with the method invocation. 789s # * @arg_an_i: Argument to pass with the method invocation. 789s # * @arg_an_u: Argument to pass with the method invocation. 789s # * @arg_an_x: Argument to pass with the method invocation. 789s # * @arg_an_t: Argument to pass with the method invocation. 789s # * @arg_an_d: Argument to pass with the method invocation. 789s # * @arg_an_s: Argument to pass with the method invocation. 789s # * @arg_an_o: Argument to pass with the method invocation. 789s # * @arg_an_g: Argument to pass with the method invocation. 789s # * @arg_an_h: Argument to pass with the method invocation. 789s # * @arg_an_ay: Argument to pass with the method invocation. 789s # * @arg_an_as: Argument to pass with the method invocation. 789s # * @arg_an_ao: Argument to pass with the method invocation. 789s # * @arg_an_aay: Argument to pass with the method invocation. 789s # * @arg_an_asv: Argument to pass with the method invocation. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_other_callable_iface_call_method_with_many_args() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_other_callable_iface_call_method_with_many_args_sync ( 789s # OrgProjectOtherCallableIface *proxy, 789s # gboolean arg_an_b, 789s # guchar arg_an_y, 789s # gint16 arg_an_n, 789s # guint16 arg_an_q, 789s # gint arg_an_i, 789s # guint arg_an_u, 789s # gint64 arg_an_x, 789s # guint64 arg_an_t, 789s # gdouble arg_an_d, 789s # const gchar *arg_an_s, 789s # const gchar *arg_an_o, 789s # const gchar *arg_an_g, 789s # GVariant *arg_an_h, 789s # const gchar *arg_an_ay, 789s # const gchar *const *arg_an_as, 789s # const gchar *const *arg_an_ao, 789s # const gchar *const *arg_an_aay, 789s # GVariant *arg_an_asv, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "MethodWithManyArgs", 789s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 789s # arg_an_b, 789s # arg_an_y, 789s # arg_an_n, 789s # arg_an_q, 789s # arg_an_i, 789s # arg_an_u, 789s # arg_an_x, 789s # arg_an_t, 789s # arg_an_d, 789s # arg_an_s, 789s # arg_an_o, 789s # arg_an_g, 789s # arg_an_h, 789s # arg_an_ay, 789s # arg_an_as, 789s # arg_an_ao, 789s # arg_an_aay, 789s # arg_an_asv), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "()"); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_complete_method_with_many_args: 789s # * @object: A #OrgProjectOtherCallableIface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_other_callable_iface_complete_method_with_many_args ( 789s # OrgProjectOtherCallableIface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("()")); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectOtherCallableIfaceProxy: 789s # * 789s # * The #OrgProjectOtherCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectOtherCallableIfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectOtherCallableIfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectOtherCallableIfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_other_callable_iface_proxy_iface_init (OrgProjectOtherCallableIfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceProxy, org_project_other_callable_iface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectOtherCallableIfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceProxy, org_project_other_callable_iface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_other_callable_iface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectOtherCallableIfaceProxy *proxy = ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_other_callable_iface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectOtherCallableIfaceProxy *proxy = ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_proxy_init (OrgProjectOtherCallableIfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_other_callable_iface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_PROXY, OrgProjectOtherCallableIfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_other_callable_iface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_proxy_class_init (OrgProjectOtherCallableIfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_other_callable_iface_proxy_finalize; 789s # gobject_class->get_property = org_project_other_callable_iface_proxy_get_property; 789s # gobject_class->set_property = org_project_other_callable_iface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_other_callable_iface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_other_callable_iface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectOtherCallableIfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_proxy_iface_init (OrgProjectOtherCallableIfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.OtherCallableIface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_other_callable_iface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_other_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_other_callable_iface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_other_callable_iface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectOtherCallableIface * 789s # org_project_other_callable_iface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.OtherCallableIface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_other_callable_iface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectOtherCallableIface * 789s # org_project_other_callable_iface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_other_callable_iface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_other_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_other_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_other_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_other_callable_iface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_callable_iface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_other_callable_iface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectOtherCallableIface * 789s # org_project_other_callable_iface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_other_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_other_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectOtherCallableIface * 789s # org_project_other_callable_iface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectOtherCallableIfaceSkeleton: 789s # * 789s # * The #OrgProjectOtherCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectOtherCallableIfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectOtherCallableIfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectOtherCallableIfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_other_callable_iface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_other_callable_iface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_other_callable_iface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_callable_iface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_other_callable_iface_skeleton_vtable = 789s # { 789s # _org_project_other_callable_iface_skeleton_handle_method_call, 789s # _org_project_other_callable_iface_skeleton_handle_get_property, 789s # _org_project_other_callable_iface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_other_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_other_callable_iface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_other_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_other_callable_iface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_other_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_other_callable_iface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_other_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_other_callable_iface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_other_callable_iface_skeleton_iface_init (OrgProjectOtherCallableIfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceSkeleton, org_project_other_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectOtherCallableIfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherCallableIfaceSkeleton, org_project_other_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE, org_project_other_callable_iface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_other_callable_iface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectOtherCallableIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_other_callable_iface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_skeleton_init (OrgProjectOtherCallableIfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_other_callable_iface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON, OrgProjectOtherCallableIfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_skeleton_class_init (OrgProjectOtherCallableIfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_other_callable_iface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_other_callable_iface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_other_callable_iface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_other_callable_iface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_other_callable_iface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectOtherCallableIfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_other_callable_iface_skeleton_iface_init (OrgProjectOtherCallableIfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_other_callable_iface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.OtherCallableIface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectOtherCallableIfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectOtherCallableIface * 789s # org_project_other_callable_iface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_OTHER_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_OTHER_CALLABLE_IFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s ok 13 __main__.TestCodegen.test_generate_methods_marshallers_multiple_out_args 789s # gdbus-codegen: /usr/bin/gdbus-codegen 789s # tmpdir: /tmp/tmpdp4dfpqr 789s # /tmp/tmpdp4dfpqr/tmpvs0mnmck.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpdp4dfpqr/tmpvs0mnmck.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 2); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface org.project.CallableIface 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:OrgProjectCallableIface 789s # * @title: OrgProjectCallableIface 789s # * @short_description: Generated C code for the org.project.CallableIface D-Bus interface 789s # * 789s # * This section contains code for working with the org.project.CallableIface D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for org.project.CallableIface ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_b = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_b", 789s # (gchar *) "b", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_y = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_y", 789s # (gchar *) "y", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_n = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_n", 789s # (gchar *) "n", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_q = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_q", 789s # (gchar *) "q", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_i = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_i", 789s # (gchar *) "i", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_u = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_u", 789s # (gchar *) "u", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_x = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_x", 789s # (gchar *) "x", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_t = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_t", 789s # (gchar *) "t", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_d = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_d", 789s # (gchar *) "d", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_s = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_s", 789s # (gchar *) "s", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_o = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_o", 789s # (gchar *) "o", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_g = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_g", 789s # (gchar *) "g", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_h = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_h", 789s # (gchar *) "h", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_ay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_ay", 789s # (gchar *) "ay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_as = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_as", 789s # (gchar *) "as", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_ao = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_ao", 789s # (gchar *) "ao", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_aay = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_aay", 789s # (gchar *) "aay", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_asv = 789s # { 789s # { 789s # -1, 789s # (gchar *) "an_asv", 789s # (gchar *) "a{sv}", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_pointers[] = 789s # { 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_b.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_y.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_n.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_q.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_i.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_u.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_x.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_t.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_d.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_s.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_o.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_g.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_h.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_ay.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_as.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_ao.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_aay.parent_struct, 789s # &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_an_asv.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _org_project_callable_iface_method_info_method_with_many_args = 789s # { 789s # { 789s # -1, 789s # (gchar *) "MethodWithManyArgs", 789s # NULL, 789s # (GDBusArgInfo **) &_org_project_callable_iface_method_info_method_with_many_args_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-method-with-many-args", 789s # FALSE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _org_project_callable_iface_method_info_pointers[] = 789s # { 789s # &_org_project_callable_iface_method_info_method_with_many_args.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _org_project_callable_iface_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "org.project.CallableIface", 789s # (GDBusMethodInfo **) &_org_project_callable_iface_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "org-project-callable-iface", 789s # }; 789s # 789s # 789s # /** 789s # * org_project_callable_iface_interface_info: 789s # * 789s # * Gets a machine-readable description of the org.project.CallableIface D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # org_project_callable_iface_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #OrgProjectCallableIface interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # org_project_callable_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # org_project_callable_iface_method_marshal_method_with_many_args ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * OrgProjectCallableIface: 789s # * 789s # * Abstract interface type for the D-Bus interface org.project.CallableIface. 789s # */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_method_with_many_args: Handler for the #OrgProjectCallableIface::handle-method-with-many-args signal. 789s # * 789s # * Virtual table for the D-Bus interface org.project.CallableIface. 789s # */ 789s # 789s # typedef OrgProjectCallableIfaceIface OrgProjectCallableIfaceInterface; 789s # G_DEFINE_INTERFACE (OrgProjectCallableIface, org_project_callable_iface, G_TYPE_OBJECT) 789s # 789s # static void 789s # org_project_callable_iface_default_init (OrgProjectCallableIfaceIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * OrgProjectCallableIface::handle-method-with-many-args: 789s # * @object: A #OrgProjectCallableIface. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * 789s # * Signal emitted when a remote caller is invoking the MethodWithManyArgs() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-method-with-many-args", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (OrgProjectCallableIfaceIface, handle_method_with_many_args), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # org_project_callable_iface_method_marshal_method_with_many_args, 789s # G_TYPE_BOOLEAN, 789s # 1, 789s # G_TYPE_DBUS_METHOD_INVOCATION); 789s # 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_call_method_with_many_args: 789s # * @proxy: A #OrgProjectCallableIfaceProxy. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call org_project_callable_iface_call_method_with_many_args_finish() to get the result of the operation. 789s # * 789s # * See org_project_callable_iface_call_method_with_many_args_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # org_project_callable_iface_call_method_with_many_args ( 789s # OrgProjectCallableIface *proxy, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 789s # "MethodWithManyArgs", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_call_method_with_many_args_finish: 789s # * @proxy: A #OrgProjectCallableIfaceProxy. 789s # * @out_an_b: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_y: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_n: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_q: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_i: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_u: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_x: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_t: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_d: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_s: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_o: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_g: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_h: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_ay: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_as: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @out_an_ao: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @out_an_aay: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @out_an_asv: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_call_method_with_many_args(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with org_project_callable_iface_call_method_with_many_args(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_callable_iface_call_method_with_many_args_finish ( 789s # OrgProjectCallableIface *proxy, 789s # gboolean *out_an_b, 789s # guchar *out_an_y, 789s # gint16 *out_an_n, 789s # guint16 *out_an_q, 789s # gint *out_an_i, 789s # guint *out_an_u, 789s # gint64 *out_an_x, 789s # guint64 *out_an_t, 789s # gdouble *out_an_d, 789s # gchar **out_an_s, 789s # gchar **out_an_o, 789s # gchar **out_an_g, 789s # GVariant **out_an_h, 789s # gchar **out_an_ay, 789s # gchar ***out_an_as, 789s # gchar ***out_an_ao, 789s # gchar ***out_an_aay, 789s # GVariant **out_an_asv, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 789s # out_an_b, 789s # out_an_y, 789s # out_an_n, 789s # out_an_q, 789s # out_an_i, 789s # out_an_u, 789s # out_an_x, 789s # out_an_t, 789s # out_an_d, 789s # out_an_s, 789s # out_an_o, 789s # out_an_g, 789s # out_an_h, 789s # out_an_ay, 789s # out_an_as, 789s # out_an_ao, 789s # out_an_aay, 789s # out_an_asv); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_call_method_with_many_args_sync: 789s # * @proxy: A #OrgProjectCallableIfaceProxy. 789s # * @out_an_b: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_y: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_n: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_q: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_i: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_u: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_x: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_t: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_d: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_s: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_o: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_g: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_h: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_ay: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_an_as: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @out_an_ao: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @out_an_aay: (out) (optional) (array zero-terminated=1): Return location for return parameter or %NULL to ignore. 789s # * @out_an_asv: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the MethodWithManyArgs() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_callable_iface_call_method_with_many_args() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # org_project_callable_iface_call_method_with_many_args_sync ( 789s # OrgProjectCallableIface *proxy, 789s # gboolean *out_an_b, 789s # guchar *out_an_y, 789s # gint16 *out_an_n, 789s # guint16 *out_an_q, 789s # gint *out_an_i, 789s # guint *out_an_u, 789s # gint64 *out_an_x, 789s # guint64 *out_an_t, 789s # gdouble *out_an_d, 789s # gchar **out_an_s, 789s # gchar **out_an_o, 789s # gchar **out_an_g, 789s # GVariant **out_an_h, 789s # gchar **out_an_ay, 789s # gchar ***out_an_as, 789s # gchar ***out_an_ao, 789s # gchar ***out_an_aay, 789s # GVariant **out_an_asv, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 789s # "MethodWithManyArgs", 789s # g_variant_new ("()"), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 789s # out_an_b, 789s # out_an_y, 789s # out_an_n, 789s # out_an_q, 789s # out_an_i, 789s # out_an_u, 789s # out_an_x, 789s # out_an_t, 789s # out_an_d, 789s # out_an_s, 789s # out_an_o, 789s # out_an_g, 789s # out_an_h, 789s # out_an_ay, 789s # out_an_as, 789s # out_an_ao, 789s # out_an_aay, 789s # out_an_asv); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_complete_method_with_many_args: 789s # * @object: A #OrgProjectCallableIface. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @an_b: Parameter to return. 789s # * @an_y: Parameter to return. 789s # * @an_n: Parameter to return. 789s # * @an_q: Parameter to return. 789s # * @an_i: Parameter to return. 789s # * @an_u: Parameter to return. 789s # * @an_x: Parameter to return. 789s # * @an_t: Parameter to return. 789s # * @an_d: Parameter to return. 789s # * @an_s: Parameter to return. 789s # * @an_o: Parameter to return. 789s # * @an_g: Parameter to return. 789s # * @an_h: Parameter to return. 789s # * @an_ay: Parameter to return. 789s # * @an_as: Parameter to return. 789s # * @an_ao: Parameter to return. 789s # * @an_aay: Parameter to return. 789s # * @an_asv: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # org_project_callable_iface_complete_method_with_many_args ( 789s # OrgProjectCallableIface *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # gboolean an_b, 789s # guchar an_y, 789s # gint16 an_n, 789s # guint16 an_q, 789s # gint an_i, 789s # guint an_u, 789s # gint64 an_x, 789s # guint64 an_t, 789s # gdouble an_d, 789s # const gchar *an_s, 789s # const gchar *an_o, 789s # const gchar *an_g, 789s # GVariant *an_h, 789s # const gchar *an_ay, 789s # const gchar *const *an_as, 789s # const gchar *const *an_ao, 789s # const gchar *const *an_aay, 789s # GVariant *an_asv) 789s # { 789s # g_dbus_method_invocation_return_value (invocation, 789s # g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 789s # an_b, 789s # an_y, 789s # an_n, 789s # an_q, 789s # an_i, 789s # an_u, 789s # an_x, 789s # an_t, 789s # an_d, 789s # an_s, 789s # an_o, 789s # an_g, 789s # an_h, 789s # an_ay, 789s # an_as, 789s # an_ao, 789s # an_aay, 789s # an_asv)); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceProxy: 789s # * 789s # * The #OrgProjectCallableIfaceProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectCallableIfaceProxy. 789s # */ 789s # 789s # struct _OrgProjectCallableIfaceProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (OrgProjectCallableIfaceProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceProxy, org_project_callable_iface_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_callable_iface_proxy_finalize (GObject *object) 789s # { 789s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (org_project_callable_iface_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_CALLABLE_IFACE); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # OrgProjectCallableIfaceProxy *proxy = ORG_PROJECT_CALLABLE_IFACE_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_init (OrgProjectCallableIfaceProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = org_project_callable_iface_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_CALLABLE_IFACE_PROXY, OrgProjectCallableIfaceProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_callable_iface_interface_info ()); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_class_init (OrgProjectCallableIfaceProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_callable_iface_proxy_finalize; 789s # gobject_class->get_property = org_project_callable_iface_proxy_get_property; 789s # gobject_class->set_property = org_project_callable_iface_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = org_project_callable_iface_proxy_g_signal; 789s # proxy_class->g_properties_changed = org_project_callable_iface_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_callable_iface_proxy_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call org_project_callable_iface_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See org_project_callable_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_callable_iface_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_callable_iface_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface org.project.CallableIface. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_callable_iface_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like org_project_callable_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call org_project_callable_iface_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See org_project_callable_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # org_project_callable_iface_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_callable_iface_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with org_project_callable_iface_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return ORG_PROJECT_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like org_project_callable_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See org_project_callable_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return ORG_PROJECT_CALLABLE_IFACE (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceSkeleton: 789s # * 789s # * The #OrgProjectCallableIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * OrgProjectCallableIfaceSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #OrgProjectCallableIfaceSkeleton. 789s # */ 789s # 789s # struct _OrgProjectCallableIfaceSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _org_project_callable_iface_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_CALLABLE_IFACE); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_CALLABLE_IFACE); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _org_project_callable_iface_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _org_project_callable_iface_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_callable_iface_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _org_project_callable_iface_skeleton_vtable = 789s # { 789s # _org_project_callable_iface_skeleton_handle_method_call, 789s # _org_project_callable_iface_skeleton_handle_get_property, 789s # _org_project_callable_iface_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # org_project_callable_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return org_project_callable_iface_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # org_project_callable_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_org_project_callable_iface_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # org_project_callable_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_org_project_callable_iface_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _org_project_callable_iface_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _org_project_callable_iface_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (OrgProjectCallableIfaceSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (OrgProjectCallableIfaceSkeleton, org_project_callable_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_CALLABLE_IFACE, org_project_callable_iface_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # org_project_callable_iface_skeleton_finalize (GObject *object) 789s # { 789s # OrgProjectCallableIfaceSkeleton *skeleton = ORG_PROJECT_CALLABLE_IFACE_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (org_project_callable_iface_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_skeleton_init (OrgProjectCallableIfaceSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = org_project_callable_iface_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, OrgProjectCallableIfaceSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # org_project_callable_iface_skeleton_class_init (OrgProjectCallableIfaceSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = org_project_callable_iface_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = org_project_callable_iface_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = org_project_callable_iface_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = org_project_callable_iface_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = org_project_callable_iface_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (OrgProjectCallableIfaceSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # org_project_callable_iface_skeleton_iface_init (OrgProjectCallableIfaceIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * org_project_callable_iface_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface org.project.CallableIface. 789s # * 789s # * Returns: (transfer full) (type OrgProjectCallableIfaceSkeleton): The skeleton object. 789s # */ 789s # OrgProjectCallableIface * 789s # org_project_callable_iface_skeleton_new (void) 789s # { 789s # return ORG_PROJECT_CALLABLE_IFACE (g_object_new (TYPE_ORG_PROJECT_CALLABLE_IFACE_SKELETON, NULL)); 789s # } 789s # Error: 789s ok 14 __main__.TestCodegen.test_generate_methods_marshallers_with_unix_fds 789s # gdbus-codegen: /usr/bin/gdbus-codegen 789s # tmpdir: /tmp/tmpz0o4hnkd 789s # /tmp/tmpz0o4hnkd/tmp_py8tepz.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpz0o4hnkd/tmp_py8tepz.xml', '--output', '-', '--body'] 789s # Return code: 0 789s # Output: 789s # /* 789s # * This file is generated by gdbus-codegen, do not modify it. 789s # * 789s # * The license of this code is the same as for the D-Bus interface description 789s # * it was derived from. Note that it links to GLib, so must comply with the 789s # * LGPL linking clauses. 789s # */ 789s # 789s # #ifdef HAVE_CONFIG_H 789s # # include "config.h" 789s # #endif 789s # 789s # #include 789s # #ifdef G_OS_UNIX 789s # # include 789s # #endif 789s # 789s # #ifdef G_ENABLE_DEBUG 789s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 789s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 789s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 789s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 789s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 789s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 789s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 789s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 789s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 789s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 789s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 789s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 789s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 789s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 789s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 789s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 789s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 789s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 789s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 789s # #else /* !G_ENABLE_DEBUG */ 789s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 789s # * Do not access GValues directly in your code. Instead, use the 789s # * g_value_get_*() functions 789s # */ 789s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 789s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 789s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 789s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 789s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 789s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 789s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 789s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 789s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 789s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 789s # #endif /* !G_ENABLE_DEBUG */ 789s # 789s # typedef struct 789s # { 789s # GDBusArgInfo parent_struct; 789s # gboolean use_gvariant; 789s # } _ExtendedGDBusArgInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusMethodInfo parent_struct; 789s # const gchar *signal_name; 789s # gboolean pass_fdlist; 789s # } _ExtendedGDBusMethodInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusSignalInfo parent_struct; 789s # const gchar *signal_name; 789s # } _ExtendedGDBusSignalInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusPropertyInfo parent_struct; 789s # const gchar *hyphen_name; 789s # guint use_gvariant : 1; 789s # guint emits_changed_signal : 1; 789s # } _ExtendedGDBusPropertyInfo; 789s # 789s # typedef struct 789s # { 789s # GDBusInterfaceInfo parent_struct; 789s # const gchar *hyphen_name; 789s # } _ExtendedGDBusInterfaceInfo; 789s # 789s # typedef struct 789s # { 789s # const _ExtendedGDBusPropertyInfo *info; 789s # guint prop_id; 789s # GValue orig_value; /* the value before the change */ 789s # } ChangedProperty; 789s # 789s # static void 789s # _changed_property_free (ChangedProperty *data) 789s # { 789s # g_value_unset (&data->orig_value); 789s # g_free (data); 789s # } 789s # 789s # static gboolean 789s # _g_strv_equal0 (gchar **a, gchar **b) 789s # { 789s # gboolean ret = FALSE; 789s # guint n; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # if (g_strv_length (a) != g_strv_length (b)) 789s # goto out; 789s # for (n = 0; a[n] != NULL; n++) 789s # if (g_strcmp0 (a[n], b[n]) != 0) 789s # goto out; 789s # ret = TRUE; 789s # out: 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _g_variant_equal0 (GVariant *a, GVariant *b) 789s # { 789s # gboolean ret = FALSE; 789s # if (a == NULL && b == NULL) 789s # { 789s # ret = TRUE; 789s # goto out; 789s # } 789s # if (a == NULL || b == NULL) 789s # goto out; 789s # ret = g_variant_equal (a, b); 789s # out: 789s # return ret; 789s # } 789s # 789s # G_GNUC_UNUSED static gboolean 789s # _g_value_equal (const GValue *a, const GValue *b) 789s # { 789s # gboolean ret = FALSE; 789s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 789s # switch (G_VALUE_TYPE (a)) 789s # { 789s # case G_TYPE_BOOLEAN: 789s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 789s # break; 789s # case G_TYPE_UCHAR: 789s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 789s # break; 789s # case G_TYPE_INT: 789s # ret = (g_value_get_int (a) == g_value_get_int (b)); 789s # break; 789s # case G_TYPE_UINT: 789s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 789s # break; 789s # case G_TYPE_INT64: 789s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 789s # break; 789s # case G_TYPE_UINT64: 789s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 789s # break; 789s # case G_TYPE_DOUBLE: 789s # { 789s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 789s # gdouble da = g_value_get_double (a); 789s # gdouble db = g_value_get_double (b); 789s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 789s # } 789s # break; 789s # case G_TYPE_STRING: 789s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 789s # break; 789s # case G_TYPE_VARIANT: 789s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 789s # break; 789s # default: 789s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 789s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 789s # else 789s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 789s # break; 789s # } 789s # return ret; 789s # } 789s # 789s # static void 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_OBJECT_STRING ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint G_GNUC_UNUSED, 789s # void *marshal_data) 789s # { 789s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectObjectStringFunc) 789s # (void *data1, 789s # GDBusMethodInvocation *arg_method_invocation, 789s # GUnixFDList *arg_fd_list, 789s # const gchar *arg_greeting, 789s # void *data2); 789s # _GDbusCodegenMarshalBoolean_ObjectObjectStringFunc callback; 789s # GCClosure *cc = (GCClosure*) closure; 789s # void *data1, *data2; 789s # gboolean v_return; 789s # 789s # g_return_if_fail (return_value != NULL); 789s # g_return_if_fail (n_param_values == 4); 789s # 789s # if (G_CCLOSURE_SWAP_DATA (closure)) 789s # { 789s # data1 = closure->data; 789s # data2 = g_value_peek_pointer (param_values + 0); 789s # } 789s # else 789s # { 789s # data1 = g_value_peek_pointer (param_values + 0); 789s # data2 = closure->data; 789s # } 789s # 789s # callback = (_GDbusCodegenMarshalBoolean_ObjectObjectStringFunc) 789s # (marshal_data ? marshal_data : cc->callback); 789s # 789s # v_return = 789s # callback (data1, 789s # g_marshal_value_peek_object (param_values + 1), 789s # g_marshal_value_peek_object (param_values + 2), 789s # g_marshal_value_peek_string (param_values + 3), 789s # data2); 789s # 789s # g_value_set_boolean (return_value, v_return); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ 789s # * Code for interface test.FDPassing 789s # * ------------------------------------------------------------------------ 789s # */ 789s # 789s # /** 789s # * SECTION:TestFDPassing 789s # * @title: TestFDPassing 789s # * @short_description: Generated C code for the test.FDPassing D-Bus interface 789s # * 789s # * This section contains code for working with the test.FDPassing D-Bus interface in C. 789s # */ 789s # 789s # /* ---- Introspection data for test.FDPassing ---- */ 789s # 789s # static const _ExtendedGDBusArgInfo _test_fdpassing_method_info_hello_fd_IN_ARG_greeting = 789s # { 789s # { 789s # -1, 789s # (gchar *) "greeting", 789s # (gchar *) "s", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _test_fdpassing_method_info_hello_fd_IN_ARG_pointers[] = 789s # { 789s # &_test_fdpassing_method_info_hello_fd_IN_ARG_greeting.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusArgInfo _test_fdpassing_method_info_hello_fd_OUT_ARG_response = 789s # { 789s # { 789s # -1, 789s # (gchar *) "response", 789s # (gchar *) "s", 789s # NULL 789s # }, 789s # FALSE 789s # }; 789s # 789s # static const GDBusArgInfo * const _test_fdpassing_method_info_hello_fd_OUT_ARG_pointers[] = 789s # { 789s # &_test_fdpassing_method_info_hello_fd_OUT_ARG_response.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusMethodInfo _test_fdpassing_method_info_hello_fd = 789s # { 789s # { 789s # -1, 789s # (gchar *) "HelloFD", 789s # (GDBusArgInfo **) &_test_fdpassing_method_info_hello_fd_IN_ARG_pointers, 789s # (GDBusArgInfo **) &_test_fdpassing_method_info_hello_fd_OUT_ARG_pointers, 789s # NULL 789s # }, 789s # "handle-hello-fd", 789s # TRUE 789s # }; 789s # 789s # static const GDBusMethodInfo * const _test_fdpassing_method_info_pointers[] = 789s # { 789s # &_test_fdpassing_method_info_hello_fd.parent_struct, 789s # NULL 789s # }; 789s # 789s # static const _ExtendedGDBusInterfaceInfo _test_fdpassing_interface_info = 789s # { 789s # { 789s # -1, 789s # (gchar *) "test.FDPassing", 789s # (GDBusMethodInfo **) &_test_fdpassing_method_info_pointers, 789s # NULL, 789s # NULL, 789s # NULL 789s # }, 789s # "test-fdpassing", 789s # }; 789s # 789s # 789s # /** 789s # * test_fdpassing_interface_info: 789s # * 789s # * Gets a machine-readable description of the test.FDPassing D-Bus interface. 789s # * 789s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 789s # */ 789s # GDBusInterfaceInfo * 789s # test_fdpassing_interface_info (void) 789s # { 789s # return (GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct; 789s # } 789s # 789s # /** 789s # * test_fdpassing_override_properties: 789s # * @klass: The class structure for a #GObject derived class. 789s # * @property_id_begin: The property id to assign to the first overridden property. 789s # * 789s # * Overrides all #GObject properties in the #TestFDPassing interface for a concrete class. 789s # * The properties are overridden in the order they are defined. 789s # * 789s # * Returns: The last property id. 789s # */ 789s # guint 789s # test_fdpassing_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 789s # { 789s # return property_id_begin - 1; 789s # } 789s # 789s # 789s # inline static void 789s # test_fdpassing_method_marshal_hello_fd ( 789s # GClosure *closure, 789s # GValue *return_value, 789s # unsigned int n_param_values, 789s # const GValue *param_values, 789s # void *invocation_hint, 789s # void *marshal_data) 789s # { 789s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT_OBJECT_STRING (closure, 789s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 789s # } 789s # 789s # 789s # /** 789s # * TestFDPassing: 789s # * 789s # * Abstract interface type for the D-Bus interface test.FDPassing. 789s # */ 789s # 789s # /** 789s # * TestFDPassingIface: 789s # * @parent_iface: The parent interface. 789s # * @handle_hello_fd: Handler for the #TestFDPassing::handle-hello-fd signal. 789s # * 789s # * Virtual table for the D-Bus interface test.FDPassing. 789s # */ 789s # 789s # typedef TestFDPassingIface TestFDPassingInterface; 789s # G_DEFINE_INTERFACE (TestFDPassing, test_fdpassing, G_TYPE_OBJECT) 789s # 789s # static void 789s # test_fdpassing_default_init (TestFDPassingIface *iface) 789s # { 789s # /* GObject signals for incoming D-Bus method calls: */ 789s # /** 789s # * TestFDPassing::handle-hello-fd: 789s # * @object: A #TestFDPassing. 789s # * @invocation: A #GDBusMethodInvocation. 789s # * @fd_list: (nullable): A #GUnixFDList or %NULL. 789s # * @arg_greeting: Argument passed by remote caller. 789s # * 789s # * Signal emitted when a remote caller is invoking the HelloFD() D-Bus method. 789s # * 789s # * 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. 789s # * 789s # * 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. 789s # */ 789s # g_signal_new ("handle-hello-fd", 789s # G_TYPE_FROM_INTERFACE (iface), 789s # G_SIGNAL_RUN_LAST, 789s # G_STRUCT_OFFSET (TestFDPassingIface, handle_hello_fd), 789s # g_signal_accumulator_true_handled, 789s # NULL, 789s # test_fdpassing_method_marshal_hello_fd, 789s # G_TYPE_BOOLEAN, 789s # 3, 789s # G_TYPE_DBUS_METHOD_INVOCATION, G_TYPE_UNIX_FD_LIST, G_TYPE_STRING); 789s # 789s # } 789s # 789s # /** 789s # * test_fdpassing_call_hello_fd: 789s # * @proxy: A #TestFDPassingProxy. 789s # * @arg_greeting: Argument to pass with the method invocation. 789s # * @fd_list: (nullable): A #GUnixFDList or %NULL. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously invokes the HelloFD() D-Bus method on @proxy. 789s # * 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()). 789s # * You can then call test_fdpassing_call_hello_fd_finish() to get the result of the operation. 789s # * 789s # * See test_fdpassing_call_hello_fd_sync() for the synchronous, blocking version of this method. 789s # */ 789s # void 789s # test_fdpassing_call_hello_fd ( 789s # TestFDPassing *proxy, 789s # const gchar *arg_greeting, 789s # GUnixFDList *fd_list, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # g_dbus_proxy_call_with_unix_fd_list (G_DBUS_PROXY (proxy), 789s # "HelloFD", 789s # g_variant_new ("(s)", 789s # arg_greeting), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # fd_list, 789s # cancellable, 789s # callback, 789s # user_data); 789s # } 789s # 789s # /** 789s # * test_fdpassing_call_hello_fd_finish: 789s # * @proxy: A #TestFDPassingProxy. 789s # * @out_response: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_fd_list: (out) (optional) (nullable): Return location for a #GUnixFDList or %NULL to ignore. 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to test_fdpassing_call_hello_fd(). 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Finishes an operation started with test_fdpassing_call_hello_fd(). 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # test_fdpassing_call_hello_fd_finish ( 789s # TestFDPassing *proxy, 789s # gchar **out_response, 789s # GUnixFDList **out_fd_list, 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_with_unix_fd_list_finish (G_DBUS_PROXY (proxy), out_fd_list, res, error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(s)", 789s # out_response); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * test_fdpassing_call_hello_fd_sync: 789s # * @proxy: A #TestFDPassingProxy. 789s # * @arg_greeting: Argument to pass with the method invocation. 789s # * @fd_list: (nullable): A #GUnixFDList or %NULL. 789s # * @out_response: (out) (optional): Return location for return parameter or %NULL to ignore. 789s # * @out_fd_list: (out) (optional) (nullable): Return location for a #GUnixFDList or %NULL. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL. 789s # * 789s # * Synchronously invokes the HelloFD() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 789s # * 789s # * See test_fdpassing_call_hello_fd() for the asynchronous version of this method. 789s # * 789s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 789s # */ 789s # gboolean 789s # test_fdpassing_call_hello_fd_sync ( 789s # TestFDPassing *proxy, 789s # const gchar *arg_greeting, 789s # GUnixFDList *fd_list, 789s # gchar **out_response, 789s # GUnixFDList **out_fd_list, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GVariant *_ret; 789s # _ret = g_dbus_proxy_call_with_unix_fd_list_sync (G_DBUS_PROXY (proxy), 789s # "HelloFD", 789s # g_variant_new ("(s)", 789s # arg_greeting), 789s # G_DBUS_CALL_FLAGS_NONE, 789s # -1, 789s # fd_list, 789s # out_fd_list, 789s # cancellable, 789s # error); 789s # if (_ret == NULL) 789s # goto _out; 789s # g_variant_get (_ret, 789s # "(s)", 789s # out_response); 789s # g_variant_unref (_ret); 789s # _out: 789s # return _ret != NULL; 789s # } 789s # 789s # /** 789s # * test_fdpassing_complete_hello_fd: 789s # * @object: A #TestFDPassing. 789s # * @invocation: (transfer full): A #GDBusMethodInvocation. 789s # * @fd_list: (nullable): A #GUnixFDList or %NULL. 789s # * @response: Parameter to return. 789s # * 789s # * 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. 789s # * 789s # * This method will free @invocation, you cannot use it afterwards. 789s # */ 789s # void 789s # test_fdpassing_complete_hello_fd ( 789s # TestFDPassing *object G_GNUC_UNUSED, 789s # GDBusMethodInvocation *invocation, 789s # GUnixFDList *fd_list, 789s # const gchar *response) 789s # { 789s # g_dbus_method_invocation_return_value_with_unix_fd_list (invocation, 789s # g_variant_new ("(s)", 789s # response), 789s # fd_list); 789s # } 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * TestFDPassingProxy: 789s # * 789s # * The #TestFDPassingProxy structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * TestFDPassingProxyClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #TestFDPassingProxy. 789s # */ 789s # 789s # struct _TestFDPassingProxyPrivate 789s # { 789s # GData *qdata; 789s # }; 789s # 789s # static void test_fdpassing_proxy_iface_init (TestFDPassingIface *iface); 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (TestFDPassingProxy, test_fdpassing_proxy, G_TYPE_DBUS_PROXY, 789s # G_ADD_PRIVATE (TestFDPassingProxy) 789s # G_IMPLEMENT_INTERFACE (TYPE_TEST_FDPASSING, test_fdpassing_proxy_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (TestFDPassingProxy, test_fdpassing_proxy, G_TYPE_DBUS_PROXY, 789s # G_IMPLEMENT_INTERFACE (TYPE_TEST_FDPASSING, test_fdpassing_proxy_iface_init)) 789s # 789s # #endif 789s # static void 789s # test_fdpassing_proxy_finalize (GObject *object) 789s # { 789s # TestFDPassingProxy *proxy = TEST_FDPASSING_PROXY (object); 789s # g_datalist_clear (&proxy->priv->qdata); 789s # G_OBJECT_CLASS (test_fdpassing_proxy_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # test_fdpassing_proxy_get_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # test_fdpassing_proxy_set_property (GObject *object G_GNUC_UNUSED, 789s # guint prop_id G_GNUC_UNUSED, 789s # const GValue *value G_GNUC_UNUSED, 789s # GParamSpec *pspec G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void 789s # test_fdpassing_proxy_g_signal (GDBusProxy *proxy, 789s # const gchar *sender_name G_GNUC_UNUSED, 789s # const gchar *signal_name, 789s # GVariant *parameters) 789s # { 789s # _ExtendedGDBusSignalInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # gsize n; 789s # guint signal_id; 789s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, signal_name); 789s # if (info == NULL) 789s # return; 789s # num_params = g_variant_n_children (parameters); 789s # paramv = g_new0 (GValue, num_params + 1); 789s # g_value_init (¶mv[0], TYPE_TEST_FDPASSING); 789s # g_value_set_object (¶mv[0], proxy); 789s # g_variant_iter_init (&iter, parameters); 789s # n = 1; 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_TEST_FDPASSING); 789s # g_signal_emitv (paramv, signal_id, 0, NULL); 789s # for (n = 0; n < num_params + 1; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static void 789s # test_fdpassing_proxy_g_properties_changed (GDBusProxy *_proxy, 789s # GVariant *changed_properties, 789s # const gchar *const *invalidated_properties) 789s # { 789s # TestFDPassingProxy *proxy = TEST_FDPASSING_PROXY (_proxy); 789s # guint n; 789s # const gchar *key; 789s # GVariantIter *iter; 789s # _ExtendedGDBusPropertyInfo *info; 789s # g_variant_get (changed_properties, "a{sv}", &iter); 789s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, key); 789s # g_datalist_remove_data (&proxy->priv->qdata, key); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # g_variant_iter_free (iter); 789s # for (n = 0; invalidated_properties[n] != NULL; n++) 789s # { 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, invalidated_properties[n]); 789s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 789s # if (info != NULL) 789s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 789s # } 789s # } 789s # 789s # static void 789s # test_fdpassing_proxy_init (TestFDPassingProxy *proxy) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # proxy->priv = test_fdpassing_proxy_get_instance_private (proxy); 789s # #else 789s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_TEST_FDPASSING_PROXY, TestFDPassingProxyPrivate); 789s # #endif 789s # 789s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), test_fdpassing_interface_info ()); 789s # } 789s # 789s # static void 789s # test_fdpassing_proxy_class_init (TestFDPassingProxyClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusProxyClass *proxy_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = test_fdpassing_proxy_finalize; 789s # gobject_class->get_property = test_fdpassing_proxy_get_property; 789s # gobject_class->set_property = test_fdpassing_proxy_set_property; 789s # 789s # proxy_class = G_DBUS_PROXY_CLASS (klass); 789s # proxy_class->g_signal = test_fdpassing_proxy_g_signal; 789s # proxy_class->g_properties_changed = test_fdpassing_proxy_g_properties_changed; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (TestFDPassingProxyPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # test_fdpassing_proxy_iface_init (TestFDPassingIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * test_fdpassing_proxy_new: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Asynchronously creates a proxy for the D-Bus interface test.FDPassing. See g_dbus_proxy_new() for more details. 789s # * 789s # * 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()). 789s # * You can then call test_fdpassing_proxy_new_finish() to get the result of the operation. 789s # * 789s # * See test_fdpassing_proxy_new_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # test_fdpassing_proxy_new ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * test_fdpassing_proxy_new_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to test_fdpassing_proxy_new(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with test_fdpassing_proxy_new(). 789s # * 789s # * Returns: (transfer full) (type TestFDPassingProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # TestFDPassing * 789s # test_fdpassing_proxy_new_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return TEST_FDPASSING (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * test_fdpassing_proxy_new_sync: 789s # * @connection: A #GDBusConnection. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Synchronously creates a proxy for the D-Bus interface test.FDPassing. See g_dbus_proxy_new_sync() for more details. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See test_fdpassing_proxy_new() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type TestFDPassingProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # TestFDPassing * 789s # test_fdpassing_proxy_new_sync ( 789s # GDBusConnection *connection, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return TEST_FDPASSING (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /** 789s # * test_fdpassing_proxy_new_for_bus: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 789s # * @user_data: User data to pass to @callback. 789s # * 789s # * Like test_fdpassing_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * 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()). 789s # * You can then call test_fdpassing_proxy_new_for_bus_finish() to get the result of the operation. 789s # * 789s # * See test_fdpassing_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 789s # */ 789s # void 789s # test_fdpassing_proxy_new_for_bus ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GAsyncReadyCallback callback, 789s # gpointer user_data) 789s # { 789s # 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); 789s # } 789s # 789s # /** 789s # * test_fdpassing_proxy_new_for_bus_finish: 789s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to test_fdpassing_proxy_new_for_bus(). 789s # * @error: Return location for error or %NULL 789s # * 789s # * Finishes an operation started with test_fdpassing_proxy_new_for_bus(). 789s # * 789s # * Returns: (transfer full) (type TestFDPassingProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # TestFDPassing * 789s # test_fdpassing_proxy_new_for_bus_finish ( 789s # GAsyncResult *res, 789s # GError **error) 789s # { 789s # GObject *ret; 789s # GObject *source_object; 789s # source_object = g_async_result_get_source_object (res); 789s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 789s # g_object_unref (source_object); 789s # if (ret != NULL) 789s # return TEST_FDPASSING (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # /** 789s # * test_fdpassing_proxy_new_for_bus_sync: 789s # * @bus_type: A #GBusType. 789s # * @flags: Flags from the #GDBusProxyFlags enumeration. 789s # * @name: A bus name (well-known or unique). 789s # * @object_path: An object path. 789s # * @cancellable: (nullable): A #GCancellable or %NULL. 789s # * @error: Return location for error or %NULL 789s # * 789s # * Like test_fdpassing_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 789s # * 789s # * The calling thread is blocked until a reply is received. 789s # * 789s # * See test_fdpassing_proxy_new_for_bus() for the asynchronous version of this constructor. 789s # * 789s # * Returns: (transfer full) (type TestFDPassingProxy): The constructed proxy object or %NULL if @error is set. 789s # */ 789s # TestFDPassing * 789s # test_fdpassing_proxy_new_for_bus_sync ( 789s # GBusType bus_type, 789s # GDBusProxyFlags flags, 789s # const gchar *name, 789s # const gchar *object_path, 789s # GCancellable *cancellable, 789s # GError **error) 789s # { 789s # GInitable *ret; 789s # 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); 789s # if (ret != NULL) 789s # return TEST_FDPASSING (ret); 789s # else 789s # return NULL; 789s # } 789s # 789s # 789s # /* ------------------------------------------------------------------------ */ 789s # 789s # /** 789s # * TestFDPassingSkeleton: 789s # * 789s # * The #TestFDPassingSkeleton structure contains only private data and should only be accessed using the provided API. 789s # */ 789s # 789s # /** 789s # * TestFDPassingSkeletonClass: 789s # * @parent_class: The parent class. 789s # * 789s # * Class structure for #TestFDPassingSkeleton. 789s # */ 789s # 789s # struct _TestFDPassingSkeletonPrivate 789s # { 789s # GValue *properties; 789s # GList *changed_properties; 789s # GSource *changed_properties_idle_source; 789s # GMainContext *context; 789s # GMutex lock; 789s # }; 789s # 789s # static void 789s # _test_fdpassing_skeleton_handle_method_call ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name, 789s # const gchar *method_name, 789s # GVariant *parameters, 789s # GDBusMethodInvocation *invocation, 789s # gpointer user_data) 789s # { 789s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (user_data); 789s # _ExtendedGDBusMethodInfo *info; 789s # GVariantIter iter; 789s # GVariant *child; 789s # GValue *paramv; 789s # gsize num_params; 789s # guint num_extra; 789s # gsize n; 789s # guint signal_id; 789s # GValue return_value = G_VALUE_INIT; 789s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 789s # g_assert (info != NULL); 789s # num_params = g_variant_n_children (parameters); 789s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 789s # n = 0; 789s # g_value_init (¶mv[n], TYPE_TEST_FDPASSING); 789s # g_value_set_object (¶mv[n++], skeleton); 789s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 789s # g_value_set_object (¶mv[n++], invocation); 789s # if (info->pass_fdlist) 789s # { 789s # #ifdef G_OS_UNIX 789s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 789s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 789s # #else 789s # g_assert_not_reached (); 789s # #endif 789s # } 789s # g_variant_iter_init (&iter, parameters); 789s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 789s # { 789s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 789s # if (arg_info->use_gvariant) 789s # { 789s # g_value_init (¶mv[n], G_TYPE_VARIANT); 789s # g_value_set_variant (¶mv[n], child); 789s # n++; 789s # } 789s # else 789s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 789s # g_variant_unref (child); 789s # } 789s # signal_id = g_signal_lookup (info->signal_name, TYPE_TEST_FDPASSING); 789s # g_value_init (&return_value, G_TYPE_BOOLEAN); 789s # g_signal_emitv (paramv, signal_id, 0, &return_value); 789s # if (!g_value_get_boolean (&return_value)) 789s # 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); 789s # g_value_unset (&return_value); 789s # for (n = 0; n < num_params + num_extra; n++) 789s # g_value_unset (¶mv[n]); 789s # g_free (paramv); 789s # } 789s # 789s # static GVariant * 789s # _test_fdpassing_skeleton_handle_get_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # GVariant *ret; 789s # ret = NULL; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # g_value_init (&value, pspec->value_type); 789s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 789s # g_value_unset (&value); 789s # } 789s # return ret; 789s # } 789s # 789s # static gboolean 789s # _test_fdpassing_skeleton_handle_set_property ( 789s # GDBusConnection *connection G_GNUC_UNUSED, 789s # const gchar *sender G_GNUC_UNUSED, 789s # const gchar *object_path G_GNUC_UNUSED, 789s # const gchar *interface_name G_GNUC_UNUSED, 789s # const gchar *property_name, 789s # GVariant *variant, 789s # GError **error, 789s # gpointer user_data) 789s # { 789s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (user_data); 789s # GValue value = G_VALUE_INIT; 789s # GParamSpec *pspec; 789s # _ExtendedGDBusPropertyInfo *info; 789s # gboolean ret; 789s # ret = FALSE; 789s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_test_fdpassing_interface_info.parent_struct, property_name); 789s # g_assert (info != NULL); 789s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 789s # if (pspec == NULL) 789s # { 789s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 789s # } 789s # else 789s # { 789s # if (info->use_gvariant) 789s # g_value_set_variant (&value, variant); 789s # else 789s # g_dbus_gvariant_to_gvalue (variant, &value); 789s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 789s # g_value_unset (&value); 789s # ret = TRUE; 789s # } 789s # return ret; 789s # } 789s # 789s # static const GDBusInterfaceVTable _test_fdpassing_skeleton_vtable = 789s # { 789s # _test_fdpassing_skeleton_handle_method_call, 789s # _test_fdpassing_skeleton_handle_get_property, 789s # _test_fdpassing_skeleton_handle_set_property, 789s # {NULL} 789s # }; 789s # 789s # static GDBusInterfaceInfo * 789s # test_fdpassing_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return test_fdpassing_interface_info (); 789s # } 789s # 789s # static GDBusInterfaceVTable * 789s # test_fdpassing_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 789s # { 789s # return (GDBusInterfaceVTable *) &_test_fdpassing_skeleton_vtable; 789s # } 789s # 789s # static GVariant * 789s # test_fdpassing_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 789s # { 789s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (_skeleton); 789s # 789s # GVariantBuilder builder; 789s # guint n; 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 789s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #else 789s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 789s # #endif 789s # if (_test_fdpassing_interface_info.parent_struct.properties == NULL) 789s # goto out; 789s # for (n = 0; _test_fdpassing_interface_info.parent_struct.properties[n] != NULL; n++) 789s # { 789s # GDBusPropertyInfo *info = _test_fdpassing_interface_info.parent_struct.properties[n]; 789s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 789s # { 789s # GVariant *value; 789s # 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); 789s # if (value != NULL) 789s # { 789s # g_variant_take_ref (value); 789s # g_variant_builder_add (&builder, "{sv}", info->name, value); 789s # g_variant_unref (value); 789s # } 789s # } 789s # } 789s # out: 789s # return g_variant_builder_end (&builder); 789s # } 789s # 789s # static void 789s # test_fdpassing_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # static void test_fdpassing_skeleton_iface_init (TestFDPassingIface *iface); 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # G_DEFINE_TYPE_WITH_CODE (TestFDPassingSkeleton, test_fdpassing_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_ADD_PRIVATE (TestFDPassingSkeleton) 789s # G_IMPLEMENT_INTERFACE (TYPE_TEST_FDPASSING, test_fdpassing_skeleton_iface_init)) 789s # 789s # #else 789s # G_DEFINE_TYPE_WITH_CODE (TestFDPassingSkeleton, test_fdpassing_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 789s # G_IMPLEMENT_INTERFACE (TYPE_TEST_FDPASSING, test_fdpassing_skeleton_iface_init)) 789s # 789s # #endif 789s # static void 789s # test_fdpassing_skeleton_finalize (GObject *object) 789s # { 789s # TestFDPassingSkeleton *skeleton = TEST_FDPASSING_SKELETON (object); 789s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 789s # if (skeleton->priv->changed_properties_idle_source != NULL) 789s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 789s # g_main_context_unref (skeleton->priv->context); 789s # g_mutex_clear (&skeleton->priv->lock); 789s # G_OBJECT_CLASS (test_fdpassing_skeleton_parent_class)->finalize (object); 789s # } 789s # 789s # static void 789s # test_fdpassing_skeleton_init (TestFDPassingSkeleton *skeleton) 789s # { 789s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 789s # skeleton->priv = test_fdpassing_skeleton_get_instance_private (skeleton); 789s # #else 789s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_TEST_FDPASSING_SKELETON, TestFDPassingSkeletonPrivate); 789s # #endif 789s # 789s # g_mutex_init (&skeleton->priv->lock); 789s # skeleton->priv->context = g_main_context_ref_thread_default (); 789s # } 789s # 789s # static void 789s # test_fdpassing_skeleton_class_init (TestFDPassingSkeletonClass *klass) 789s # { 789s # GObjectClass *gobject_class; 789s # GDBusInterfaceSkeletonClass *skeleton_class; 789s # 789s # gobject_class = G_OBJECT_CLASS (klass); 789s # gobject_class->finalize = test_fdpassing_skeleton_finalize; 789s # 789s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 789s # skeleton_class->get_info = test_fdpassing_skeleton_dbus_interface_get_info; 789s # skeleton_class->get_properties = test_fdpassing_skeleton_dbus_interface_get_properties; 789s # skeleton_class->flush = test_fdpassing_skeleton_dbus_interface_flush; 789s # skeleton_class->get_vtable = test_fdpassing_skeleton_dbus_interface_get_vtable; 789s # 789s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 789s # g_type_class_add_private (klass, sizeof (TestFDPassingSkeletonPrivate)); 789s # #endif 789s # } 789s # 789s # static void 789s # test_fdpassing_skeleton_iface_init (TestFDPassingIface *iface G_GNUC_UNUSED) 789s # { 789s # } 789s # 789s # /** 789s # * test_fdpassing_skeleton_new: 789s # * 789s # * Creates a skeleton object for the D-Bus interface test.FDPassing. 789s # * 789s # * Returns: (transfer full) (type TestFDPassingSkeleton): The skeleton object. 789s # */ 789s # TestFDPassing * 789s # test_fdpassing_skeleton_new (void) 789s # { 789s # return TEST_FDPASSING (g_object_new (TYPE_TEST_FDPASSING_SKELETON, NULL)); 789s # } 789s # Error: 789s ok 15 __main__.TestCodegen.test_generate_rst 789s # gdbus-codegen: /usr/bin/gdbus-codegen 789s # tmpdir: /tmp/tmpho_lo37m 789s # /tmp/tmpho_lo37m/tmp_5stbfeo.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpho_lo37m/tmp_5stbfeo.xml', '--generate-rst', 'test'] 789s # Return code: 0 789s # Output: 789s # 789s # Error: 789s ok 16 __main__.TestCodegen.test_generate_rst_method 789s # gdbus-codegen: /usr/bin/gdbus-codegen 789s # tmpdir: /tmp/tmpdhudslre 789s # /tmp/tmpdhudslre/tmpvtptmpri.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpdhudslre/tmpvtptmpri.xml', '--generate-rst', 'test'] 789s # Return code: 0 789s # Output: 789s # 789s # Error: 789s ok 17 __main__.TestCodegen.test_generate_rst_property 789s # gdbus-codegen: /usr/bin/gdbus-codegen 789s # tmpdir: /tmp/tmp00u4ib56 789s # /tmp/tmp00u4ib56/tmp7wrh4mp4.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp00u4ib56/tmp7wrh4mp4.xml', '--generate-rst', 'test'] 789s # Return code: 0 789s # Output: 789s # 789s # Error: 789s ok 18 __main__.TestCodegen.test_generate_rst_signal 789s # gdbus-codegen: /usr/bin/gdbus-codegen 789s # tmpdir: /tmp/tmp4v1hi2iu 789s # /tmp/tmp4v1hi2iu/tmpty5rcid7.xml: 789s # 789s # 789s # 789s # 789s # 789s # 789s # 789s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp4v1hi2iu/tmpty5rcid7.xml', '--generate-rst', 'test'] 789s # Return code: 0 789s # Output: 789s # 789s # Error: 790s ok 19 __main__.TestCodegen.test_generate_signal_id_multiple_signal_args_types 790s # gdbus-codegen: /usr/bin/gdbus-codegen 790s # tmpdir: /tmp/tmppl8zd5lc 790s # /tmp/tmppl8zd5lc/tmpaospngz4.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmppl8zd5lc/tmpaospngz4.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # static void 790s # _g_dbus_codegen_marshal_VOID__BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT ( 790s # GClosure *closure, 790s # GValue *return_value G_GNUC_UNUSED, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint G_GNUC_UNUSED, 790s # void *marshal_data) 790s # { 790s # typedef void (*_GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 790s # (void *data1, 790s # gboolean arg_an_b, 790s # guchar arg_an_y, 790s # gint16 arg_an_n, 790s # guint16 arg_an_q, 790s # gint arg_an_i, 790s # guint arg_an_u, 790s # gint64 arg_an_x, 790s # guint64 arg_an_t, 790s # gdouble arg_an_d, 790s # const gchar *arg_an_s, 790s # const gchar *arg_an_o, 790s # const gchar *arg_an_g, 790s # GVariant *arg_an_h, 790s # const gchar *arg_an_ay, 790s # const gchar *const *arg_an_as, 790s # const gchar *const *arg_an_ao, 790s # const gchar *const *arg_an_aay, 790s # GVariant *arg_an_asv, 790s # void *data2); 790s # _GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc callback; 790s # GCClosure *cc = (GCClosure*) closure; 790s # void *data1, *data2; 790s # 790s # g_return_if_fail (n_param_values == 19); 790s # 790s # if (G_CCLOSURE_SWAP_DATA (closure)) 790s # { 790s # data1 = closure->data; 790s # data2 = g_value_peek_pointer (param_values + 0); 790s # } 790s # else 790s # { 790s # data1 = g_value_peek_pointer (param_values + 0); 790s # data2 = closure->data; 790s # } 790s # 790s # callback = (_GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 790s # (marshal_data ? marshal_data : cc->callback); 790s # 790s # callback (data1, 790s # g_marshal_value_peek_boolean (param_values + 1), 790s # g_marshal_value_peek_uchar (param_values + 2), 790s # g_marshal_value_peek_int (param_values + 3), 790s # g_marshal_value_peek_uint (param_values + 4), 790s # g_marshal_value_peek_int (param_values + 5), 790s # g_marshal_value_peek_uint (param_values + 6), 790s # g_marshal_value_peek_int64 (param_values + 7), 790s # g_marshal_value_peek_uint64 (param_values + 8), 790s # g_marshal_value_peek_double (param_values + 9), 790s # g_marshal_value_peek_string (param_values + 10), 790s # g_marshal_value_peek_string (param_values + 11), 790s # g_marshal_value_peek_string (param_values + 12), 790s # g_marshal_value_peek_variant (param_values + 13), 790s # g_marshal_value_peek_string (param_values + 14), 790s # g_marshal_value_peek_boxed (param_values + 15), 790s # g_marshal_value_peek_boxed (param_values + 16), 790s # g_marshal_value_peek_boxed (param_values + 17), 790s # g_marshal_value_peek_variant (param_values + 18), 790s # data2); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[1] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_b = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_b", 790s # (gchar *) "b", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_y = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_y", 790s # (gchar *) "y", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_n = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_n", 790s # (gchar *) "n", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_q = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_q", 790s # (gchar *) "q", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_i = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_i", 790s # (gchar *) "i", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_u = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_u", 790s # (gchar *) "u", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_x = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_x", 790s # (gchar *) "x", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_t = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_t", 790s # (gchar *) "t", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_d = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_d", 790s # (gchar *) "d", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_s = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_s", 790s # (gchar *) "s", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_o = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_o", 790s # (gchar *) "o", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_g = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_g", 790s # (gchar *) "g", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_h = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_h", 790s # (gchar *) "h", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ay = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_ay", 790s # (gchar *) "ay", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_as = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_as", 790s # (gchar *) "as", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ao = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_ao", 790s # (gchar *) "ao", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_aay = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_aay", 790s # (gchar *) "aay", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_asv = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_asv", 790s # (gchar *) "a{sv}", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_b.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_y.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_n.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_q.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_i.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_u.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_x.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_t.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_d.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_s.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_o.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_g.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_h.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ay.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_as.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ao.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_aay.parent_struct, 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_asv.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_signal_with_many_args = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SignalWithManyArgs", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_pointers, 790s # NULL 790s # }, 790s # "signal-with-many-args" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_signal_with_many_args.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_signal_with_many_args ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # _g_dbus_codegen_marshal_VOID__BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @signal_with_many_args: Handler for the #OrgProjectSignalingIface::signal-with-many-args signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::signal-with-many-args: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_b: Argument. 790s # * @arg_an_y: Argument. 790s # * @arg_an_n: Argument. 790s # * @arg_an_q: Argument. 790s # * @arg_an_i: Argument. 790s # * @arg_an_u: Argument. 790s # * @arg_an_x: Argument. 790s # * @arg_an_t: Argument. 790s # * @arg_an_d: Argument. 790s # * @arg_an_s: Argument. 790s # * @arg_an_o: Argument. 790s # * @arg_an_g: Argument. 790s # * @arg_an_h: Argument. 790s # * @arg_an_ay: Argument. 790s # * @arg_an_as: Argument. 790s # * @arg_an_ao: Argument. 790s # * @arg_an_aay: Argument. 790s # * @arg_an_asv: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SignalWithManyArgs" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS] = 790s # g_signal_new ("signal-with-many-args", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, signal_with_many_args), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_signal_with_many_args, 790s # G_TYPE_NONE, 790s # 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); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_signal_with_many_args: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_b: Argument to pass with the signal. 790s # * @arg_an_y: Argument to pass with the signal. 790s # * @arg_an_n: Argument to pass with the signal. 790s # * @arg_an_q: Argument to pass with the signal. 790s # * @arg_an_i: Argument to pass with the signal. 790s # * @arg_an_u: Argument to pass with the signal. 790s # * @arg_an_x: Argument to pass with the signal. 790s # * @arg_an_t: Argument to pass with the signal. 790s # * @arg_an_d: Argument to pass with the signal. 790s # * @arg_an_s: Argument to pass with the signal. 790s # * @arg_an_o: Argument to pass with the signal. 790s # * @arg_an_g: Argument to pass with the signal. 790s # * @arg_an_h: Argument to pass with the signal. 790s # * @arg_an_ay: Argument to pass with the signal. 790s # * @arg_an_as: Argument to pass with the signal. 790s # * @arg_an_ao: Argument to pass with the signal. 790s # * @arg_an_aay: Argument to pass with the signal. 790s # * @arg_an_asv: Argument to pass with the signal. 790s # * 790s # * Emits the "SignalWithManyArgs" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_signal_with_many_args ( 790s # OrgProjectSignalingIface *object, 790s # gboolean arg_an_b, 790s # guchar arg_an_y, 790s # gint16 arg_an_n, 790s # guint16 arg_an_q, 790s # gint arg_an_i, 790s # guint arg_an_u, 790s # gint64 arg_an_x, 790s # guint64 arg_an_t, 790s # gdouble arg_an_d, 790s # const gchar *arg_an_s, 790s # const gchar *arg_an_o, 790s # const gchar *arg_an_g, 790s # GVariant *arg_an_h, 790s # const gchar *arg_an_ay, 790s # const gchar *const *arg_an_as, 790s # const gchar *const *arg_an_ao, 790s # const gchar *const *arg_an_aay, 790s # GVariant *arg_an_asv) 790s # { 790s # 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); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_signal_with_many_args ( 790s # OrgProjectSignalingIface *object, 790s # gboolean arg_an_b, 790s # guchar arg_an_y, 790s # gint16 arg_an_n, 790s # guint16 arg_an_q, 790s # gint arg_an_i, 790s # guint arg_an_u, 790s # gint64 arg_an_x, 790s # guint64 arg_an_t, 790s # gdouble arg_an_d, 790s # const gchar *arg_an_s, 790s # const gchar *arg_an_o, 790s # const gchar *arg_an_g, 790s # GVariant *arg_an_h, 790s # const gchar *arg_an_ay, 790s # const gchar *const *arg_an_as, 790s # const gchar *const *arg_an_ao, 790s # const gchar *const *arg_an_aay, 790s # GVariant *arg_an_asv) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 790s # arg_an_b, 790s # arg_an_y, 790s # arg_an_n, 790s # arg_an_q, 790s # arg_an_i, 790s # arg_an_u, 790s # arg_an_x, 790s # arg_an_t, 790s # arg_an_d, 790s # arg_an_s, 790s # arg_an_o, 790s # arg_an_g, 790s # arg_an_h, 790s # arg_an_ay, 790s # arg_an_as, 790s # arg_an_ao, 790s # arg_an_aay, 790s # arg_an_asv)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SignalWithManyArgs", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->signal_with_many_args = _org_project_signaling_iface_on_signal_signal_with_many_args; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s ok 20 __main__.TestCodegen.test_generate_signal_id_multiple_signals_types 790s # gdbus-codegen: /usr/bin/gdbus-codegen 790s # tmpdir: /tmp/tmpugwnapvt 790s # /tmp/tmpugwnapvt/tmp3th372g8.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpugwnapvt/tmp3th372g8.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # static void 790s # _g_dbus_codegen_marshal_VOID__INT64 ( 790s # GClosure *closure, 790s # GValue *return_value G_GNUC_UNUSED, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint G_GNUC_UNUSED, 790s # void *marshal_data) 790s # { 790s # typedef void (*_GDbusCodegenMarshalVoid_Int64Func) 790s # (void *data1, 790s # gint64 arg_an_x, 790s # void *data2); 790s # _GDbusCodegenMarshalVoid_Int64Func callback; 790s # GCClosure *cc = (GCClosure*) closure; 790s # void *data1, *data2; 790s # 790s # g_return_if_fail (n_param_values == 2); 790s # 790s # if (G_CCLOSURE_SWAP_DATA (closure)) 790s # { 790s # data1 = closure->data; 790s # data2 = g_value_peek_pointer (param_values + 0); 790s # } 790s # else 790s # { 790s # data1 = g_value_peek_pointer (param_values + 0); 790s # data2 = closure->data; 790s # } 790s # 790s # callback = (_GDbusCodegenMarshalVoid_Int64Func) 790s # (marshal_data ? marshal_data : cc->callback); 790s # 790s # callback (data1, 790s # g_marshal_value_peek_int64 (param_values + 1), 790s # data2); 790s # } 790s # 790s # static void 790s # _g_dbus_codegen_marshal_VOID__UINT64 ( 790s # GClosure *closure, 790s # GValue *return_value G_GNUC_UNUSED, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint G_GNUC_UNUSED, 790s # void *marshal_data) 790s # { 790s # typedef void (*_GDbusCodegenMarshalVoid_Uint64Func) 790s # (void *data1, 790s # guint64 arg_an_t, 790s # void *data2); 790s # _GDbusCodegenMarshalVoid_Uint64Func callback; 790s # GCClosure *cc = (GCClosure*) closure; 790s # void *data1, *data2; 790s # 790s # g_return_if_fail (n_param_values == 2); 790s # 790s # if (G_CCLOSURE_SWAP_DATA (closure)) 790s # { 790s # data1 = closure->data; 790s # data2 = g_value_peek_pointer (param_values + 0); 790s # } 790s # else 790s # { 790s # data1 = g_value_peek_pointer (param_values + 0); 790s # data2 = closure->data; 790s # } 790s # 790s # callback = (_GDbusCodegenMarshalVoid_Uint64Func) 790s # (marshal_data ? marshal_data : cc->callback); 790s # 790s # callback (data1, 790s # g_marshal_value_peek_uint64 (param_values + 1), 790s # data2); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_NO_ARG_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[19] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_no_arg_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "NoArgSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "no-arg-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_an_b = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_b", 790s # (gchar *) "b", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_an_b.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_b = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalB", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-b" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_an_y = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_y", 790s # (gchar *) "y", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_an_y.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_y = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalY", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-y" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_an_n = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_n", 790s # (gchar *) "n", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_an_n.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_n = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalN", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-n" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_an_q = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_q", 790s # (gchar *) "q", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_an_q.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_q = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalQ", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-q" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_an_i = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_i", 790s # (gchar *) "i", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_an_i.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_i = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalI", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-i" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_an_u = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_u", 790s # (gchar *) "u", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_an_u.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_u = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalU", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-u" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_an_x = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_x", 790s # (gchar *) "x", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_an_x.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_x = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalX", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-x" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_an_t = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_t", 790s # (gchar *) "t", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_an_t.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_t = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalT", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-t" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_an_d = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_d", 790s # (gchar *) "d", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_an_d.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_d = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalD", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-d" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_an_s = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_s", 790s # (gchar *) "s", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_an_s.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_s = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalS", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-s" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_an_o = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_o", 790s # (gchar *) "o", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_an_o.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_o = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalO", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-o" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_an_g = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_g", 790s # (gchar *) "g", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_an_g.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_g = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalG", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-g" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_an_h = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_h", 790s # (gchar *) "h", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_an_h.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_h = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalH", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-h" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_an_ay = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_ay", 790s # (gchar *) "ay", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_an_ay.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_ay = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalAY", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-ay" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_an_as = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_as", 790s # (gchar *) "as", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_an_as.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_as = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalAS", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-as" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_an_ao = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_ao", 790s # (gchar *) "ao", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_an_ao.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_ao = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalAO", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-ao" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_an_aay = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_aay", 790s # (gchar *) "aay", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_an_aay.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_aay = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalAAY", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-aay" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_an_asv = 790s # { 790s # { 790s # -1, 790s # (gchar *) "an_asv", 790s # (gchar *) "a{sv}", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_an_asv.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_asv = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalASV", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-asv" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_no_arg_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_b.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_y.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_n.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_q.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_i.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_u.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_x.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_t.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_d.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_s.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_o.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_g.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_h.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_ay.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_as.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_ao.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_aay.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_asv.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_no_arg_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_b ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__BOOLEAN (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_y ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__UCHAR (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_n ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__INT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_q ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__UINT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_i ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__INT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_u ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__UINT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_x ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # _g_dbus_codegen_marshal_VOID__INT64 (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_t ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # _g_dbus_codegen_marshal_VOID__UINT64 (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_d ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__DOUBLE (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_s ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__STRING (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_o ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__STRING (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_g ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__STRING (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_h ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VARIANT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_ay ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__STRING (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_as ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__BOXED (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_ao ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__BOXED (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_aay ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__BOXED (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_asv ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VARIANT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @no_arg_signal: Handler for the #OrgProjectSignalingIface::no-arg-signal signal. 790s # * @single_arg_signal_aay: Handler for the #OrgProjectSignalingIface::single-arg-signal-aay signal. 790s # * @single_arg_signal_ao: Handler for the #OrgProjectSignalingIface::single-arg-signal-ao signal. 790s # * @single_arg_signal_as: Handler for the #OrgProjectSignalingIface::single-arg-signal-as signal. 790s # * @single_arg_signal_asv: Handler for the #OrgProjectSignalingIface::single-arg-signal-asv signal. 790s # * @single_arg_signal_ay: Handler for the #OrgProjectSignalingIface::single-arg-signal-ay signal. 790s # * @single_arg_signal_b: Handler for the #OrgProjectSignalingIface::single-arg-signal-b signal. 790s # * @single_arg_signal_d: Handler for the #OrgProjectSignalingIface::single-arg-signal-d signal. 790s # * @single_arg_signal_g: Handler for the #OrgProjectSignalingIface::single-arg-signal-g signal. 790s # * @single_arg_signal_h: Handler for the #OrgProjectSignalingIface::single-arg-signal-h signal. 790s # * @single_arg_signal_i: Handler for the #OrgProjectSignalingIface::single-arg-signal-i signal. 790s # * @single_arg_signal_n: Handler for the #OrgProjectSignalingIface::single-arg-signal-n signal. 790s # * @single_arg_signal_o: Handler for the #OrgProjectSignalingIface::single-arg-signal-o signal. 790s # * @single_arg_signal_q: Handler for the #OrgProjectSignalingIface::single-arg-signal-q signal. 790s # * @single_arg_signal_s: Handler for the #OrgProjectSignalingIface::single-arg-signal-s signal. 790s # * @single_arg_signal_t: Handler for the #OrgProjectSignalingIface::single-arg-signal-t signal. 790s # * @single_arg_signal_u: Handler for the #OrgProjectSignalingIface::single-arg-signal-u signal. 790s # * @single_arg_signal_x: Handler for the #OrgProjectSignalingIface::single-arg-signal-x signal. 790s # * @single_arg_signal_y: Handler for the #OrgProjectSignalingIface::single-arg-signal-y signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::no-arg-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "NoArgSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_NO_ARG_SIGNAL] = 790s # g_signal_new ("no-arg-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, no_arg_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_no_arg_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-b: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_b: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalB" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B] = 790s # g_signal_new ("single-arg-signal-b", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_b), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_b, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_BOOLEAN); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-y: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_y: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalY" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y] = 790s # g_signal_new ("single-arg-signal-y", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_y), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_y, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_UCHAR); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-n: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_n: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalN" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N] = 790s # g_signal_new ("single-arg-signal-n", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_n), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_n, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_INT); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-q: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_q: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalQ" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q] = 790s # g_signal_new ("single-arg-signal-q", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_q), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_q, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_UINT); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-i: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_i: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalI" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I] = 790s # g_signal_new ("single-arg-signal-i", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_i), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_i, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_INT); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-u: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_u: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalU" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U] = 790s # g_signal_new ("single-arg-signal-u", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_u), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_u, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_UINT); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-x: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_x: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalX" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X] = 790s # g_signal_new ("single-arg-signal-x", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_x), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_x, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_INT64); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-t: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_t: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalT" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T] = 790s # g_signal_new ("single-arg-signal-t", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_t), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_t, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_UINT64); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-d: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_d: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalD" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D] = 790s # g_signal_new ("single-arg-signal-d", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_d), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_d, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_DOUBLE); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-s: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_s: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalS" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S] = 790s # g_signal_new ("single-arg-signal-s", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_s), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_s, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRING); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-o: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_o: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalO" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O] = 790s # g_signal_new ("single-arg-signal-o", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_o), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_o, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRING); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-g: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_g: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalG" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G] = 790s # g_signal_new ("single-arg-signal-g", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_g), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_g, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRING); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-h: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_h: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalH" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H] = 790s # g_signal_new ("single-arg-signal-h", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_h), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_h, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_VARIANT); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-ay: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_ay: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAY" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY] = 790s # g_signal_new ("single-arg-signal-ay", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_ay), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_ay, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRING); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-as: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_as: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAS" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS] = 790s # g_signal_new ("single-arg-signal-as", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_as), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_as, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRV); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-ao: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_ao: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAO" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO] = 790s # g_signal_new ("single-arg-signal-ao", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_ao), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_ao, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRV); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-aay: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_aay: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAAY" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY] = 790s # g_signal_new ("single-arg-signal-aay", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_aay), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_aay, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRV); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-asv: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_asv: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalASV" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV] = 790s # g_signal_new ("single-arg-signal-asv", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_asv), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_asv, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_VARIANT); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_no_arg_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "NoArgSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_no_arg_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_NO_ARG_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_b: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_b: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalB" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_b ( 790s # OrgProjectSignalingIface *object, 790s # gboolean arg_an_b) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B], 0, arg_an_b); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_y: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_y: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalY" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_y ( 790s # OrgProjectSignalingIface *object, 790s # guchar arg_an_y) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y], 0, arg_an_y); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_n: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_n: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalN" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_n ( 790s # OrgProjectSignalingIface *object, 790s # gint16 arg_an_n) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N], 0, arg_an_n); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_q: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_q: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalQ" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_q ( 790s # OrgProjectSignalingIface *object, 790s # guint16 arg_an_q) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q], 0, arg_an_q); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_i: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_i: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalI" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_i ( 790s # OrgProjectSignalingIface *object, 790s # gint arg_an_i) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I], 0, arg_an_i); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_u: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_u: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalU" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_u ( 790s # OrgProjectSignalingIface *object, 790s # guint arg_an_u) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U], 0, arg_an_u); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_x: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_x: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalX" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_x ( 790s # OrgProjectSignalingIface *object, 790s # gint64 arg_an_x) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X], 0, arg_an_x); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_t: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_t: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalT" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_t ( 790s # OrgProjectSignalingIface *object, 790s # guint64 arg_an_t) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T], 0, arg_an_t); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_d: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_d: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalD" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_d ( 790s # OrgProjectSignalingIface *object, 790s # gdouble arg_an_d) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D], 0, arg_an_d); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_s: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_s: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalS" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_s ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_an_s) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S], 0, arg_an_s); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_o: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_o: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalO" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_o ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_an_o) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O], 0, arg_an_o); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_g: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_g: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalG" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_g ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_an_g) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G], 0, arg_an_g); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_h: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_h: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalH" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_h ( 790s # OrgProjectSignalingIface *object, 790s # GVariant *arg_an_h) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H], 0, arg_an_h); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_ay: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_ay: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalAY" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_ay ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_an_ay) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY], 0, arg_an_ay); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_as: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_as: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalAS" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_as ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *const *arg_an_as) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS], 0, arg_an_as); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_ao: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_ao: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalAO" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_ao ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *const *arg_an_ao) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO], 0, arg_an_ao); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_aay: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_aay: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalAAY" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_aay ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *const *arg_an_aay) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY], 0, arg_an_aay); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_asv: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_an_asv: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalASV" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_asv ( 790s # OrgProjectSignalingIface *object, 790s # GVariant *arg_an_asv) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV], 0, arg_an_asv); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_no_arg_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "NoArgSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_b ( 790s # OrgProjectSignalingIface *object, 790s # gboolean arg_an_b) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(b)", 790s # arg_an_b)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalB", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_y ( 790s # OrgProjectSignalingIface *object, 790s # guchar arg_an_y) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(y)", 790s # arg_an_y)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalY", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_n ( 790s # OrgProjectSignalingIface *object, 790s # gint16 arg_an_n) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(n)", 790s # arg_an_n)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalN", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_q ( 790s # OrgProjectSignalingIface *object, 790s # guint16 arg_an_q) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(q)", 790s # arg_an_q)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalQ", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_i ( 790s # OrgProjectSignalingIface *object, 790s # gint arg_an_i) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(i)", 790s # arg_an_i)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalI", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_u ( 790s # OrgProjectSignalingIface *object, 790s # guint arg_an_u) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(u)", 790s # arg_an_u)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalU", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_x ( 790s # OrgProjectSignalingIface *object, 790s # gint64 arg_an_x) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(x)", 790s # arg_an_x)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalX", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_t ( 790s # OrgProjectSignalingIface *object, 790s # guint64 arg_an_t) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(t)", 790s # arg_an_t)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalT", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_d ( 790s # OrgProjectSignalingIface *object, 790s # gdouble arg_an_d) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(d)", 790s # arg_an_d)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalD", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_s ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_an_s) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(s)", 790s # arg_an_s)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalS", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_o ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_an_o) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(o)", 790s # arg_an_o)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalO", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_g ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_an_g) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(g)", 790s # arg_an_g)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalG", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_h ( 790s # OrgProjectSignalingIface *object, 790s # GVariant *arg_an_h) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(@h)", 790s # arg_an_h)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalH", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_ay ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_an_ay) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(^ay)", 790s # arg_an_ay)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAY", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_as ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *const *arg_an_as) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(^as)", 790s # arg_an_as)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAS", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_ao ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *const *arg_an_ao) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(^ao)", 790s # arg_an_ao)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAO", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_aay ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *const *arg_an_aay) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(^aay)", 790s # arg_an_aay)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAAY", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_asv ( 790s # OrgProjectSignalingIface *object, 790s # GVariant *arg_an_asv) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(@a{sv})", 790s # arg_an_asv)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalASV", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->no_arg_signal = _org_project_signaling_iface_on_signal_no_arg_signal; 790s # iface->single_arg_signal_b = _org_project_signaling_iface_on_signal_single_arg_signal_b; 790s # iface->single_arg_signal_y = _org_project_signaling_iface_on_signal_single_arg_signal_y; 790s # iface->single_arg_signal_n = _org_project_signaling_iface_on_signal_single_arg_signal_n; 790s # iface->single_arg_signal_q = _org_project_signaling_iface_on_signal_single_arg_signal_q; 790s # iface->single_arg_signal_i = _org_project_signaling_iface_on_signal_single_arg_signal_i; 790s # iface->single_arg_signal_u = _org_project_signaling_iface_on_signal_single_arg_signal_u; 790s # iface->single_arg_signal_x = _org_project_signaling_iface_on_signal_single_arg_signal_x; 790s # iface->single_arg_signal_t = _org_project_signaling_iface_on_signal_single_arg_signal_t; 790s # iface->single_arg_signal_d = _org_project_signaling_iface_on_signal_single_arg_signal_d; 790s # iface->single_arg_signal_s = _org_project_signaling_iface_on_signal_single_arg_signal_s; 790s # iface->single_arg_signal_o = _org_project_signaling_iface_on_signal_single_arg_signal_o; 790s # iface->single_arg_signal_g = _org_project_signaling_iface_on_signal_single_arg_signal_g; 790s # iface->single_arg_signal_h = _org_project_signaling_iface_on_signal_single_arg_signal_h; 790s # iface->single_arg_signal_ay = _org_project_signaling_iface_on_signal_single_arg_signal_ay; 790s # iface->single_arg_signal_as = _org_project_signaling_iface_on_signal_single_arg_signal_as; 790s # iface->single_arg_signal_ao = _org_project_signaling_iface_on_signal_single_arg_signal_ao; 790s # iface->single_arg_signal_aay = _org_project_signaling_iface_on_signal_single_arg_signal_aay; 790s # iface->single_arg_signal_asv = _org_project_signaling_iface_on_signal_single_arg_signal_asv; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s ok 21 __main__.TestCodegen.test_generate_signal_id_simple_signal 790s # gdbus-codegen: /usr/bin/gdbus-codegen 790s # tmpdir: /tmp/tmpl_uqk6rd 790s # /tmp/tmpl_uqk6rd/tmpg5scn1mz.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpl_uqk6rd/tmpg5scn1mz.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.UsefulInterface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectUsefulInterface 790s # * @title: OrgProjectUsefulInterface 790s # * @short_description: Generated C code for the org.project.UsefulInterface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.UsefulInterface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_USEFUL_INTERFACE_SIMPLE_SIGNAL, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_USEFUL_INTERFACE_SIGNALS[1] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.UsefulInterface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_useful_interface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_useful_interface_signal_info_pointers[] = 790s # { 790s # &_org_project_useful_interface_signal_info_simple_signal.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_useful_interface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.UsefulInterface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_useful_interface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-useful-interface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_useful_interface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.UsefulInterface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_useful_interface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_useful_interface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectUsefulInterface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_useful_interface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_useful_interface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectUsefulInterface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.UsefulInterface. 790s # */ 790s # 790s # /** 790s # * OrgProjectUsefulInterfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectUsefulInterface::simple-signal signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.UsefulInterface. 790s # */ 790s # 790s # typedef OrgProjectUsefulInterfaceIface OrgProjectUsefulInterfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectUsefulInterface, org_project_useful_interface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_useful_interface_default_init (OrgProjectUsefulInterfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectUsefulInterface::simple-signal: 790s # * @object: A #OrgProjectUsefulInterface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_USEFUL_INTERFACE_SIGNALS[_ORG_PROJECT_USEFUL_INTERFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectUsefulInterfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_useful_interface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # } 790s # 790s # /** 790s # * org_project_useful_interface_emit_simple_signal: 790s # * @object: A #OrgProjectUsefulInterface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_useful_interface_emit_simple_signal ( 790s # OrgProjectUsefulInterface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_USEFUL_INTERFACE_SIGNALS[_ORG_PROJECT_USEFUL_INTERFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectUsefulInterfaceProxy: 790s # * 790s # * The #OrgProjectUsefulInterfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectUsefulInterfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectUsefulInterfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectUsefulInterfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceProxy, org_project_useful_interface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_useful_interface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_useful_interface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_useful_interface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_useful_interface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_useful_interface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_useful_interface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectUsefulInterfaceProxy *proxy = ORG_PROJECT_USEFUL_INTERFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_useful_interface_proxy_init (OrgProjectUsefulInterfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_useful_interface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_USEFUL_INTERFACE_PROXY, OrgProjectUsefulInterfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_useful_interface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_useful_interface_proxy_class_init (OrgProjectUsefulInterfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_useful_interface_proxy_finalize; 790s # gobject_class->get_property = org_project_useful_interface_proxy_get_property; 790s # gobject_class->set_property = org_project_useful_interface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_useful_interface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_useful_interface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_useful_interface_proxy_iface_init (OrgProjectUsefulInterfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_useful_interface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_useful_interface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_useful_interface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_useful_interface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_useful_interface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_useful_interface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectUsefulInterface * 790s # org_project_useful_interface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_useful_interface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.UsefulInterface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_useful_interface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectUsefulInterface * 790s # org_project_useful_interface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_useful_interface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_useful_interface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_useful_interface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_useful_interface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_useful_interface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_useful_interface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_useful_interface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_useful_interface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectUsefulInterface * 790s # org_project_useful_interface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_useful_interface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_useful_interface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_useful_interface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectUsefulInterface * 790s # org_project_useful_interface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_USEFUL_INTERFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectUsefulInterfaceSkeleton: 790s # * 790s # * The #OrgProjectUsefulInterfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectUsefulInterfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectUsefulInterfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectUsefulInterfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_useful_interface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_USEFUL_INTERFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_USEFUL_INTERFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_useful_interface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_useful_interface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_useful_interface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_useful_interface_skeleton_vtable = 790s # { 790s # _org_project_useful_interface_skeleton_handle_method_call, 790s # _org_project_useful_interface_skeleton_handle_get_property, 790s # _org_project_useful_interface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_useful_interface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_useful_interface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_useful_interface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_useful_interface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_useful_interface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_useful_interface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_useful_interface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_useful_interface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_useful_interface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_useful_interface_on_signal_simple_signal ( 790s # OrgProjectUsefulInterface *object) 790s # { 790s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.UsefulInterface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectUsefulInterfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectUsefulInterfaceSkeleton, org_project_useful_interface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_USEFUL_INTERFACE, org_project_useful_interface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_useful_interface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectUsefulInterfaceSkeleton *skeleton = ORG_PROJECT_USEFUL_INTERFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_useful_interface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_useful_interface_skeleton_init (OrgProjectUsefulInterfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_useful_interface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, OrgProjectUsefulInterfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_useful_interface_skeleton_class_init (OrgProjectUsefulInterfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_useful_interface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_useful_interface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_useful_interface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_useful_interface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_useful_interface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectUsefulInterfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_useful_interface_skeleton_iface_init (OrgProjectUsefulInterfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_useful_interface_on_signal_simple_signal; 790s # } 790s # 790s # /** 790s # * org_project_useful_interface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.UsefulInterface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectUsefulInterfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectUsefulInterface * 790s # org_project_useful_interface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_USEFUL_INTERFACE (g_object_new (TYPE_ORG_PROJECT_USEFUL_INTERFACE_SKELETON, NULL)); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.OtherIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectOtherIface 790s # * @title: OrgProjectOtherIface 790s # * @short_description: Generated C code for the org.project.OtherIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.OtherIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_OTHER_IFACE_SIMPLE_SIGNAL, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_OTHER_IFACE_SIGNALS[1] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.OtherIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_other_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_other_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_other_iface_signal_info_simple_signal.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_other_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.OtherIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_other_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-other-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_other_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.OtherIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_other_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_other_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectOtherIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_other_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_other_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectOtherIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.OtherIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectOtherIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectOtherIface::simple-signal signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.OtherIface. 790s # */ 790s # 790s # typedef OrgProjectOtherIfaceIface OrgProjectOtherIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectOtherIface, org_project_other_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_other_iface_default_init (OrgProjectOtherIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectOtherIface::simple-signal: 790s # * @object: A #OrgProjectOtherIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_OTHER_IFACE_SIGNALS[_ORG_PROJECT_OTHER_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectOtherIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_other_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # } 790s # 790s # /** 790s # * org_project_other_iface_emit_simple_signal: 790s # * @object: A #OrgProjectOtherIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_other_iface_emit_simple_signal ( 790s # OrgProjectOtherIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_OTHER_IFACE_SIGNALS[_ORG_PROJECT_OTHER_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectOtherIfaceProxy: 790s # * 790s # * The #OrgProjectOtherIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectOtherIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectOtherIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectOtherIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_other_iface_proxy_iface_init (OrgProjectOtherIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherIfaceProxy, org_project_other_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectOtherIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_IFACE, org_project_other_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherIfaceProxy, org_project_other_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_IFACE, org_project_other_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_other_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectOtherIfaceProxy *proxy = ORG_PROJECT_OTHER_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_other_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_other_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_other_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_other_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_OTHER_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_other_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectOtherIfaceProxy *proxy = ORG_PROJECT_OTHER_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_other_iface_proxy_init (OrgProjectOtherIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_other_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_OTHER_IFACE_PROXY, OrgProjectOtherIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_other_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_other_iface_proxy_class_init (OrgProjectOtherIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_other_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_other_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_other_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_other_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_other_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectOtherIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_other_iface_proxy_iface_init (OrgProjectOtherIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_other_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.OtherIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_other_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_other_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_other_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_other_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_other_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectOtherIface * 790s # org_project_other_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_OTHER_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_other_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.OtherIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_other_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectOtherIface * 790s # org_project_other_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_OTHER_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_other_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_other_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_other_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_other_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_other_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_other_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_other_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectOtherIface * 790s # org_project_other_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_OTHER_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_other_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_other_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_other_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectOtherIface * 790s # org_project_other_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_OTHER_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectOtherIfaceSkeleton: 790s # * 790s # * The #OrgProjectOtherIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectOtherIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectOtherIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectOtherIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_other_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_OTHER_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_other_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_other_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_other_iface_skeleton_vtable = 790s # { 790s # _org_project_other_iface_skeleton_handle_method_call, 790s # _org_project_other_iface_skeleton_handle_get_property, 790s # _org_project_other_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_other_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_other_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_other_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_other_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_other_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_other_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_other_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_other_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_other_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_other_iface_on_signal_simple_signal ( 790s # OrgProjectOtherIface *object) 790s # { 790s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.OtherIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_other_iface_skeleton_iface_init (OrgProjectOtherIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherIfaceSkeleton, org_project_other_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectOtherIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_IFACE, org_project_other_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherIfaceSkeleton, org_project_other_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_IFACE, org_project_other_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_other_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectOtherIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_other_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_other_iface_skeleton_init (OrgProjectOtherIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_other_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_OTHER_IFACE_SKELETON, OrgProjectOtherIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_other_iface_skeleton_class_init (OrgProjectOtherIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_other_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_other_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_other_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_other_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_other_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectOtherIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_other_iface_skeleton_iface_init (OrgProjectOtherIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_other_iface_on_signal_simple_signal; 790s # } 790s # 790s # /** 790s # * org_project_other_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.OtherIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectOtherIface * 790s # org_project_other_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_OTHER_IFACE (g_object_new (TYPE_ORG_PROJECT_OTHER_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s ok 22 __main__.TestCodegen.test_generate_signals_marshaller_simple_signal 790s # gdbus-codegen: /usr/bin/gdbus-codegen 790s # tmpdir: /tmp/tmp6nzt2_vt 790s # /tmp/tmp6nzt2_vt/tmpbvr119en.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp6nzt2_vt/tmpbvr119en.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[1] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.OtherSignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectOtherSignalingIface 790s # * @title: OrgProjectOtherSignalingIface 790s # * @short_description: Generated C code for the org.project.OtherSignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.OtherSignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_OTHER_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_OTHER_SIGNALING_IFACE_SIGNALS[1] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.OtherSignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_other_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_other_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_other_signaling_iface_signal_info_simple_signal.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_other_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.OtherSignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_other_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-other-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_other_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.OtherSignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_other_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_other_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectOtherSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_other_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_other_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectOtherSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.OtherSignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectOtherSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectOtherSignalingIface::simple-signal signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.OtherSignalingIface. 790s # */ 790s # 790s # typedef OrgProjectOtherSignalingIfaceIface OrgProjectOtherSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectOtherSignalingIface, org_project_other_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_other_signaling_iface_default_init (OrgProjectOtherSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectOtherSignalingIface::simple-signal: 790s # * @object: A #OrgProjectOtherSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_OTHER_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_OTHER_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectOtherSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_other_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # } 790s # 790s # /** 790s # * org_project_other_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectOtherSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_other_signaling_iface_emit_simple_signal ( 790s # OrgProjectOtherSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_OTHER_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_OTHER_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectOtherSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectOtherSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectOtherSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectOtherSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectOtherSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_other_signaling_iface_proxy_iface_init (OrgProjectOtherSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherSignalingIfaceProxy, org_project_other_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectOtherSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE, org_project_other_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherSignalingIfaceProxy, org_project_other_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE, org_project_other_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_other_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectOtherSignalingIfaceProxy *proxy = ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_other_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectOtherSignalingIfaceProxy *proxy = ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_proxy_init (OrgProjectOtherSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_other_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_PROXY, OrgProjectOtherSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_other_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_proxy_class_init (OrgProjectOtherSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_other_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_other_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_other_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_other_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_other_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectOtherSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_proxy_iface_init (OrgProjectOtherSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_other_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.OtherSignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_other_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_other_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_other_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_other_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_other_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectOtherSignalingIface * 790s # org_project_other_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_other_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.OtherSignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_other_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectOtherSignalingIface * 790s # org_project_other_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_other_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_other_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_other_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_other_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_other_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_other_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_other_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_other_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectOtherSignalingIface * 790s # org_project_other_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_other_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_other_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_other_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectOtherSignalingIface * 790s # org_project_other_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectOtherSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectOtherSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectOtherSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectOtherSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectOtherSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_other_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_other_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_other_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_other_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_other_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_other_signaling_iface_skeleton_handle_method_call, 790s # _org_project_other_signaling_iface_skeleton_handle_get_property, 790s # _org_project_other_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_other_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_other_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_other_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_other_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_other_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_other_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_other_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_other_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_other_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectOtherSignalingIface *object) 790s # { 790s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.OtherSignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_other_signaling_iface_skeleton_iface_init (OrgProjectOtherSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherSignalingIfaceSkeleton, org_project_other_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectOtherSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE, org_project_other_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectOtherSignalingIfaceSkeleton, org_project_other_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE, org_project_other_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_other_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectOtherSignalingIfaceSkeleton *skeleton = ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_other_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_skeleton_init (OrgProjectOtherSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_other_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON, OrgProjectOtherSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_skeleton_class_init (OrgProjectOtherSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_other_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_other_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_other_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_other_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_other_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectOtherSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_other_signaling_iface_skeleton_iface_init (OrgProjectOtherSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_other_signaling_iface_on_signal_simple_signal; 790s # } 790s # 790s # /** 790s # * org_project_other_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.OtherSignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectOtherSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectOtherSignalingIface * 790s # org_project_other_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_OTHER_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_OTHER_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # Executing: glib/codegen.py.test 790s ok 23 __main__.TestCodegen.test_generate_signals_marshaller_single_typed_args 790s # gdbus-codegen: /usr/bin/gdbus-codegen 790s # tmpdir: /tmp/tmpcqaj3zbt 790s # /tmp/tmpcqaj3zbt/tmpqxpf3a5j.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpqxpf3a5j.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_arg_b = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_b", 790s # (gchar *) "b", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_arg_b.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_b = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalB", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_b_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-b" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_b.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_b ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__BOOLEAN (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_b: Handler for the #OrgProjectSignalingIface::single-arg-signal-b signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-b: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_b: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalB" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B] = 790s # g_signal_new ("single-arg-signal-b", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_b), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_b, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_BOOLEAN); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_b: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_b: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalB" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_b ( 790s # OrgProjectSignalingIface *object, 790s # gboolean arg_arg_b) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_B], 0, arg_arg_b); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_b ( 790s # OrgProjectSignalingIface *object, 790s # gboolean arg_arg_b) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(b)", 790s # arg_arg_b)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalB", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_b = _org_project_signaling_iface_on_signal_single_arg_signal_b; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmpl0kqczrb.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpl0kqczrb.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_arg_y = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_y", 790s # (gchar *) "y", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_arg_y.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_y = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalY", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_y_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-y" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_y.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_y ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__UCHAR (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_y: Handler for the #OrgProjectSignalingIface::single-arg-signal-y signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-y: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_y: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalY" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y] = 790s # g_signal_new ("single-arg-signal-y", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_y), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_y, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_UCHAR); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_y: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_y: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalY" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_y ( 790s # OrgProjectSignalingIface *object, 790s # guchar arg_arg_y) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Y], 0, arg_arg_y); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_y ( 790s # OrgProjectSignalingIface *object, 790s # guchar arg_arg_y) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(y)", 790s # arg_arg_y)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalY", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_y = _org_project_signaling_iface_on_signal_single_arg_signal_y; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmp6usueom7.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmp6usueom7.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_arg_n = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_n", 790s # (gchar *) "n", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_arg_n.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_n = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalN", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_n_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-n" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_n.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_n ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__INT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_n: Handler for the #OrgProjectSignalingIface::single-arg-signal-n signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-n: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_n: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalN" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N] = 790s # g_signal_new ("single-arg-signal-n", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_n), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_n, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_INT); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_n: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_n: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalN" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_n ( 790s # OrgProjectSignalingIface *object, 790s # gint16 arg_arg_n) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_N], 0, arg_arg_n); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_n ( 790s # OrgProjectSignalingIface *object, 790s # gint16 arg_arg_n) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(n)", 790s # arg_arg_n)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalN", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_n = _org_project_signaling_iface_on_signal_single_arg_signal_n; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmp1mty7x1x.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmp1mty7x1x.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_arg_q = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_q", 790s # (gchar *) "q", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_arg_q.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_q = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalQ", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_q_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-q" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_q.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_q ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__UINT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_q: Handler for the #OrgProjectSignalingIface::single-arg-signal-q signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-q: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_q: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalQ" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q] = 790s # g_signal_new ("single-arg-signal-q", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_q), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_q, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_UINT); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_q: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_q: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalQ" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_q ( 790s # OrgProjectSignalingIface *object, 790s # guint16 arg_arg_q) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_Q], 0, arg_arg_q); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_q ( 790s # OrgProjectSignalingIface *object, 790s # guint16 arg_arg_q) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(q)", 790s # arg_arg_q)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalQ", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_q = _org_project_signaling_iface_on_signal_single_arg_signal_q; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmpir1hr49f.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpir1hr49f.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_arg_i = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_i", 790s # (gchar *) "i", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_arg_i.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_i = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalI", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_i_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-i" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_i.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_i ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__INT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_i: Handler for the #OrgProjectSignalingIface::single-arg-signal-i signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-i: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_i: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalI" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I] = 790s # g_signal_new ("single-arg-signal-i", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_i), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_i, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_INT); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_i: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_i: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalI" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_i ( 790s # OrgProjectSignalingIface *object, 790s # gint arg_arg_i) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_I], 0, arg_arg_i); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_i ( 790s # OrgProjectSignalingIface *object, 790s # gint arg_arg_i) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(i)", 790s # arg_arg_i)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalI", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_i = _org_project_signaling_iface_on_signal_single_arg_signal_i; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmpy2ewf_6w.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpy2ewf_6w.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_arg_u = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_u", 790s # (gchar *) "u", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_arg_u.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_u = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalU", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_u_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-u" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_u.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_u ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__UINT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_u: Handler for the #OrgProjectSignalingIface::single-arg-signal-u signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-u: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_u: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalU" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U] = 790s # g_signal_new ("single-arg-signal-u", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_u), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_u, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_UINT); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_u: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_u: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalU" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_u ( 790s # OrgProjectSignalingIface *object, 790s # guint arg_arg_u) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_U], 0, arg_arg_u); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_u ( 790s # OrgProjectSignalingIface *object, 790s # guint arg_arg_u) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(u)", 790s # arg_arg_u)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalU", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_u = _org_project_signaling_iface_on_signal_single_arg_signal_u; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmpu4jl60t3.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpu4jl60t3.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # static void 790s # _g_dbus_codegen_marshal_VOID__INT64 ( 790s # GClosure *closure, 790s # GValue *return_value G_GNUC_UNUSED, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint G_GNUC_UNUSED, 790s # void *marshal_data) 790s # { 790s # typedef void (*_GDbusCodegenMarshalVoid_Int64Func) 790s # (void *data1, 790s # gint64 arg_arg_x, 790s # void *data2); 790s # _GDbusCodegenMarshalVoid_Int64Func callback; 790s # GCClosure *cc = (GCClosure*) closure; 790s # void *data1, *data2; 790s # 790s # g_return_if_fail (n_param_values == 2); 790s # 790s # if (G_CCLOSURE_SWAP_DATA (closure)) 790s # { 790s # data1 = closure->data; 790s # data2 = g_value_peek_pointer (param_values + 0); 790s # } 790s # else 790s # { 790s # data1 = g_value_peek_pointer (param_values + 0); 790s # data2 = closure->data; 790s # } 790s # 790s # callback = (_GDbusCodegenMarshalVoid_Int64Func) 790s # (marshal_data ? marshal_data : cc->callback); 790s # 790s # callback (data1, 790s # g_marshal_value_peek_int64 (param_values + 1), 790s # data2); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_arg_x = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_x", 790s # (gchar *) "x", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_arg_x.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_x = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalX", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_x_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-x" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_x.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_x ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # _g_dbus_codegen_marshal_VOID__INT64 (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_x: Handler for the #OrgProjectSignalingIface::single-arg-signal-x signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-x: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_x: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalX" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X] = 790s # g_signal_new ("single-arg-signal-x", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_x), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_x, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_INT64); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_x: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_x: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalX" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_x ( 790s # OrgProjectSignalingIface *object, 790s # gint64 arg_arg_x) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_X], 0, arg_arg_x); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_x ( 790s # OrgProjectSignalingIface *object, 790s # gint64 arg_arg_x) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(x)", 790s # arg_arg_x)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalX", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_x = _org_project_signaling_iface_on_signal_single_arg_signal_x; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmpqph2y3xf.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpqph2y3xf.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # static void 790s # _g_dbus_codegen_marshal_VOID__UINT64 ( 790s # GClosure *closure, 790s # GValue *return_value G_GNUC_UNUSED, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint G_GNUC_UNUSED, 790s # void *marshal_data) 790s # { 790s # typedef void (*_GDbusCodegenMarshalVoid_Uint64Func) 790s # (void *data1, 790s # guint64 arg_arg_t, 790s # void *data2); 790s # _GDbusCodegenMarshalVoid_Uint64Func callback; 790s # GCClosure *cc = (GCClosure*) closure; 790s # void *data1, *data2; 790s # 790s # g_return_if_fail (n_param_values == 2); 790s # 790s # if (G_CCLOSURE_SWAP_DATA (closure)) 790s # { 790s # data1 = closure->data; 790s # data2 = g_value_peek_pointer (param_values + 0); 790s # } 790s # else 790s # { 790s # data1 = g_value_peek_pointer (param_values + 0); 790s # data2 = closure->data; 790s # } 790s # 790s # callback = (_GDbusCodegenMarshalVoid_Uint64Func) 790s # (marshal_data ? marshal_data : cc->callback); 790s # 790s # callback (data1, 790s # g_marshal_value_peek_uint64 (param_values + 1), 790s # data2); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_arg_t = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_t", 790s # (gchar *) "t", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_arg_t.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_t = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalT", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_t_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-t" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_t.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_t ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # _g_dbus_codegen_marshal_VOID__UINT64 (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_t: Handler for the #OrgProjectSignalingIface::single-arg-signal-t signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-t: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_t: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalT" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T] = 790s # g_signal_new ("single-arg-signal-t", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_t), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_t, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_UINT64); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_t: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_t: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalT" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_t ( 790s # OrgProjectSignalingIface *object, 790s # guint64 arg_arg_t) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_T], 0, arg_arg_t); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_t ( 790s # OrgProjectSignalingIface *object, 790s # guint64 arg_arg_t) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(t)", 790s # arg_arg_t)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalT", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_t = _org_project_signaling_iface_on_signal_single_arg_signal_t; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmprgw2deql.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmprgw2deql.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_arg_d = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_d", 790s # (gchar *) "d", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_arg_d.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_d = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalD", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_d_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-d" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_d.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_d ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__DOUBLE (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_d: Handler for the #OrgProjectSignalingIface::single-arg-signal-d signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-d: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_d: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalD" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D] = 790s # g_signal_new ("single-arg-signal-d", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_d), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_d, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_DOUBLE); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_d: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_d: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalD" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_d ( 790s # OrgProjectSignalingIface *object, 790s # gdouble arg_arg_d) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_D], 0, arg_arg_d); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_d ( 790s # OrgProjectSignalingIface *object, 790s # gdouble arg_arg_d) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(d)", 790s # arg_arg_d)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalD", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_d = _org_project_signaling_iface_on_signal_single_arg_signal_d; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmp1hwtnwyq.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmp1hwtnwyq.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_arg_s = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_s", 790s # (gchar *) "s", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_arg_s.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_s = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalS", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_s_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-s" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_s.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_s ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__STRING (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_s: Handler for the #OrgProjectSignalingIface::single-arg-signal-s signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-s: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_s: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalS" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S] = 790s # g_signal_new ("single-arg-signal-s", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_s), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_s, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRING); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_s: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_s: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalS" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_s ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_arg_s) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_S], 0, arg_arg_s); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_s ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_arg_s) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(s)", 790s # arg_arg_s)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalS", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_s = _org_project_signaling_iface_on_signal_single_arg_signal_s; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmp9raemrbb.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmp9raemrbb.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_arg_o = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_o", 790s # (gchar *) "o", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_arg_o.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_o = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalO", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_o_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-o" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_o.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_o ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__STRING (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_o: Handler for the #OrgProjectSignalingIface::single-arg-signal-o signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-o: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_o: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalO" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O] = 790s # g_signal_new ("single-arg-signal-o", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_o), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_o, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRING); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_o: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_o: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalO" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_o ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_arg_o) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_O], 0, arg_arg_o); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_o ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_arg_o) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(o)", 790s # arg_arg_o)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalO", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_o = _org_project_signaling_iface_on_signal_single_arg_signal_o; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmp1h2tnx8i.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmp1h2tnx8i.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_arg_g = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_g", 790s # (gchar *) "g", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_arg_g.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_g = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalG", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_g_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-g" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_g.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_g ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__STRING (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_g: Handler for the #OrgProjectSignalingIface::single-arg-signal-g signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-g: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_g: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalG" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G] = 790s # g_signal_new ("single-arg-signal-g", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_g), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_g, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRING); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_g: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_g: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalG" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_g ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_arg_g) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_G], 0, arg_arg_g); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_g ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_arg_g) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(g)", 790s # arg_arg_g)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalG", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_g = _org_project_signaling_iface_on_signal_single_arg_signal_g; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmpsdpbt8x4.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpsdpbt8x4.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_arg_h = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_h", 790s # (gchar *) "h", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_arg_h.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_h = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalH", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_h_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-h" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_h.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_h ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VARIANT (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_h: Handler for the #OrgProjectSignalingIface::single-arg-signal-h signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-h: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_h: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalH" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H] = 790s # g_signal_new ("single-arg-signal-h", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_h), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_h, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_VARIANT); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_h: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_h: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalH" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_h ( 790s # OrgProjectSignalingIface *object, 790s # GVariant *arg_arg_h) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_H], 0, arg_arg_h); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_h ( 790s # OrgProjectSignalingIface *object, 790s # GVariant *arg_arg_h) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(@h)", 790s # arg_arg_h)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalH", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_h = _org_project_signaling_iface_on_signal_single_arg_signal_h; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmp5td1gpci.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmp5td1gpci.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_arg_ay = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_ay", 790s # (gchar *) "ay", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_arg_ay.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_ay = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalAy", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_ay_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-ay" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_ay.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_ay ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__STRING (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_ay: Handler for the #OrgProjectSignalingIface::single-arg-signal-ay signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-ay: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_ay: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAy" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY] = 790s # g_signal_new ("single-arg-signal-ay", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_ay), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_ay, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRING); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_ay: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_ay: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalAy" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_ay ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_arg_ay) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AY], 0, arg_arg_ay); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_ay ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *arg_arg_ay) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(^ay)", 790s # arg_arg_ay)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAy", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_ay = _org_project_signaling_iface_on_signal_single_arg_signal_ay; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmpobgueuvq.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpobgueuvq.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 790s # } 790s # 790s # /* ------------------------------------------------------------------------ 790s # * Code for interface org.project.SignalingIface 790s # * ------------------------------------------------------------------------ 790s # */ 790s # 790s # /** 790s # * SECTION:OrgProjectSignalingIface 790s # * @title: OrgProjectSignalingIface 790s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 790s # * 790s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 790s # */ 790s # 790s # enum 790s # { 790s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 790s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS, 790s # }; 790s # 790s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 790s # 790s # /* ---- Introspection data for org.project.SignalingIface ---- */ 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SimpleSignal", 790s # NULL, 790s # NULL 790s # }, 790s # "simple-signal" 790s # }; 790s # 790s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_arg_as = 790s # { 790s # { 790s # -1, 790s # (gchar *) "arg_as", 790s # (gchar *) "as", 790s # NULL 790s # }, 790s # FALSE 790s # }; 790s # 790s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_arg_as.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_as = 790s # { 790s # { 790s # -1, 790s # (gchar *) "SingleArgSignalAs", 790s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_as_ARG_pointers, 790s # NULL 790s # }, 790s # "single-arg-signal-as" 790s # }; 790s # 790s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 790s # { 790s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 790s # &_org_project_signaling_iface_signal_info_single_arg_signal_as.parent_struct, 790s # NULL 790s # }; 790s # 790s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 790s # { 790s # { 790s # -1, 790s # (gchar *) "org.project.SignalingIface", 790s # NULL, 790s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 790s # NULL, 790s # NULL 790s # }, 790s # "org-project-signaling-iface", 790s # }; 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_interface_info: 790s # * 790s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 790s # * 790s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 790s # */ 790s # GDBusInterfaceInfo * 790s # org_project_signaling_iface_interface_info (void) 790s # { 790s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_override_properties: 790s # * @klass: The class structure for a #GObject derived class. 790s # * @property_id_begin: The property id to assign to the first overridden property. 790s # * 790s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 790s # * The properties are overridden in the order they are defined. 790s # * 790s # * Returns: The last property id. 790s # */ 790s # guint 790s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 790s # { 790s # return property_id_begin - 1; 790s # } 790s # 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_simple_signal ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__VOID (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # inline static void 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_as ( 790s # GClosure *closure, 790s # GValue *return_value, 790s # unsigned int n_param_values, 790s # const GValue *param_values, 790s # void *invocation_hint, 790s # void *marshal_data) 790s # { 790s # g_cclosure_marshal_VOID__BOXED (closure, 790s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 790s # } 790s # 790s # 790s # /** 790s # * OrgProjectSignalingIface: 790s # * 790s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceIface: 790s # * @parent_iface: The parent interface. 790s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 790s # * @single_arg_signal_as: Handler for the #OrgProjectSignalingIface::single-arg-signal-as signal. 790s # * 790s # * Virtual table for the D-Bus interface org.project.SignalingIface. 790s # */ 790s # 790s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 790s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 790s # 790s # static void 790s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # /* GObject signals for received D-Bus signals: */ 790s # /** 790s # * OrgProjectSignalingIface::simple-signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 790s # g_signal_new ("simple-signal", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_simple_signal, 790s # G_TYPE_NONE, 790s # 0); 790s # 790s # /** 790s # * OrgProjectSignalingIface::single-arg-signal-as: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_as: Argument. 790s # * 790s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAs" is received. 790s # * 790s # * 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. 790s # */ 790s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS] = 790s # g_signal_new ("single-arg-signal-as", 790s # G_TYPE_FROM_INTERFACE (iface), 790s # G_SIGNAL_RUN_LAST, 790s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_as), 790s # NULL, 790s # NULL, 790s # org_project_signaling_iface_signal_marshal_single_arg_signal_as, 790s # G_TYPE_NONE, 790s # 1, G_TYPE_STRV); 790s # 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_simple_signal: 790s # * @object: A #OrgProjectSignalingIface. 790s # * 790s # * Emits the "SimpleSignal" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_emit_single_arg_signal_as: 790s # * @object: A #OrgProjectSignalingIface. 790s # * @arg_arg_as: Argument to pass with the signal. 790s # * 790s # * Emits the "SingleArgSignalAs" D-Bus signal. 790s # */ 790s # void 790s # org_project_signaling_iface_emit_single_arg_signal_as ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *const *arg_arg_as) 790s # { 790s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AS], 0, arg_arg_as); 790s # } 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxy: 790s # * 790s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceProxyClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceProxy. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceProxyPrivate 790s # { 790s # GData *qdata; 790s # }; 790s # 790s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_proxy_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 790s # g_datalist_clear (&proxy->priv->qdata); 790s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 790s # guint prop_id G_GNUC_UNUSED, 790s # const GValue *value G_GNUC_UNUSED, 790s # GParamSpec *pspec G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 790s # const gchar *sender_name G_GNUC_UNUSED, 790s # const gchar *signal_name, 790s # GVariant *parameters) 790s # { 790s # _ExtendedGDBusSignalInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # gsize n; 790s # guint signal_id; 790s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 790s # if (info == NULL) 790s # return; 790s # num_params = g_variant_n_children (parameters); 790s # paramv = g_new0 (GValue, num_params + 1); 790s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[0], proxy); 790s # g_variant_iter_init (&iter, parameters); 790s # n = 1; 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_signal_emitv (paramv, signal_id, 0, NULL); 790s # for (n = 0; n < num_params + 1; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 790s # GVariant *changed_properties, 790s # const gchar *const *invalidated_properties) 790s # { 790s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 790s # guint n; 790s # const gchar *key; 790s # GVariantIter *iter; 790s # _ExtendedGDBusPropertyInfo *info; 790s # g_variant_get (changed_properties, "a{sv}", &iter); 790s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 790s # g_datalist_remove_data (&proxy->priv->qdata, key); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # g_variant_iter_free (iter); 790s # for (n = 0; invalidated_properties[n] != NULL; n++) 790s # { 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 790s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 790s # if (info != NULL) 790s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 790s # } 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 790s # #else 790s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 790s # #endif 790s # 790s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusProxyClass *proxy_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 790s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 790s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 790s # 790s # proxy_class = G_DBUS_PROXY_CLASS (klass); 790s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 790s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_sync: 790s # * @connection: A #GDBusConnection. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_sync ( 790s # GDBusConnection *connection, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 790s # * @user_data: User data to pass to @callback. 790s # * 790s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * 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()). 790s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 790s # */ 790s # void 790s # org_project_signaling_iface_proxy_new_for_bus ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GAsyncReadyCallback callback, 790s # gpointer user_data) 790s # { 790s # 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); 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_finish: 790s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 790s # * @error: Return location for error or %NULL 790s # * 790s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_finish ( 790s # GAsyncResult *res, 790s # GError **error) 790s # { 790s # GObject *ret; 790s # GObject *source_object; 790s # source_object = g_async_result_get_source_object (res); 790s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 790s # g_object_unref (source_object); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_proxy_new_for_bus_sync: 790s # * @bus_type: A #GBusType. 790s # * @flags: Flags from the #GDBusProxyFlags enumeration. 790s # * @name: A bus name (well-known or unique). 790s # * @object_path: An object path. 790s # * @cancellable: (nullable): A #GCancellable or %NULL. 790s # * @error: Return location for error or %NULL 790s # * 790s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 790s # * 790s # * The calling thread is blocked until a reply is received. 790s # * 790s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_proxy_new_for_bus_sync ( 790s # GBusType bus_type, 790s # GDBusProxyFlags flags, 790s # const gchar *name, 790s # const gchar *object_path, 790s # GCancellable *cancellable, 790s # GError **error) 790s # { 790s # GInitable *ret; 790s # 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); 790s # if (ret != NULL) 790s # return ORG_PROJECT_SIGNALING_IFACE (ret); 790s # else 790s # return NULL; 790s # } 790s # 790s # 790s # /* ------------------------------------------------------------------------ */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeleton: 790s # * 790s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 790s # */ 790s # 790s # /** 790s # * OrgProjectSignalingIfaceSkeletonClass: 790s # * @parent_class: The parent class. 790s # * 790s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 790s # */ 790s # 790s # struct _OrgProjectSignalingIfaceSkeletonPrivate 790s # { 790s # GValue *properties; 790s # GList *changed_properties; 790s # GSource *changed_properties_idle_source; 790s # GMainContext *context; 790s # GMutex lock; 790s # }; 790s # 790s # static void 790s # _org_project_signaling_iface_skeleton_handle_method_call ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name, 790s # const gchar *method_name, 790s # GVariant *parameters, 790s # GDBusMethodInvocation *invocation, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # _ExtendedGDBusMethodInfo *info; 790s # GVariantIter iter; 790s # GVariant *child; 790s # GValue *paramv; 790s # gsize num_params; 790s # guint num_extra; 790s # gsize n; 790s # guint signal_id; 790s # GValue return_value = G_VALUE_INIT; 790s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 790s # g_assert (info != NULL); 790s # num_params = g_variant_n_children (parameters); 790s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 790s # n = 0; 790s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_set_object (¶mv[n++], skeleton); 790s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 790s # g_value_set_object (¶mv[n++], invocation); 790s # if (info->pass_fdlist) 790s # { 790s # #ifdef G_OS_UNIX 790s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 790s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 790s # #else 790s # g_assert_not_reached (); 790s # #endif 790s # } 790s # g_variant_iter_init (&iter, parameters); 790s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 790s # { 790s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 790s # if (arg_info->use_gvariant) 790s # { 790s # g_value_init (¶mv[n], G_TYPE_VARIANT); 790s # g_value_set_variant (¶mv[n], child); 790s # n++; 790s # } 790s # else 790s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 790s # g_variant_unref (child); 790s # } 790s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 790s # g_value_init (&return_value, G_TYPE_BOOLEAN); 790s # g_signal_emitv (paramv, signal_id, 0, &return_value); 790s # if (!g_value_get_boolean (&return_value)) 790s # 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); 790s # g_value_unset (&return_value); 790s # for (n = 0; n < num_params + num_extra; n++) 790s # g_value_unset (¶mv[n]); 790s # g_free (paramv); 790s # } 790s # 790s # static GVariant * 790s # _org_project_signaling_iface_skeleton_handle_get_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # GVariant *ret; 790s # ret = NULL; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # g_value_init (&value, pspec->value_type); 790s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 790s # g_value_unset (&value); 790s # } 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _org_project_signaling_iface_skeleton_handle_set_property ( 790s # GDBusConnection *connection G_GNUC_UNUSED, 790s # const gchar *sender G_GNUC_UNUSED, 790s # const gchar *object_path G_GNUC_UNUSED, 790s # const gchar *interface_name G_GNUC_UNUSED, 790s # const gchar *property_name, 790s # GVariant *variant, 790s # GError **error, 790s # gpointer user_data) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 790s # GValue value = G_VALUE_INIT; 790s # GParamSpec *pspec; 790s # _ExtendedGDBusPropertyInfo *info; 790s # gboolean ret; 790s # ret = FALSE; 790s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 790s # g_assert (info != NULL); 790s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 790s # if (pspec == NULL) 790s # { 790s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 790s # } 790s # else 790s # { 790s # if (info->use_gvariant) 790s # g_value_set_variant (&value, variant); 790s # else 790s # g_dbus_gvariant_to_gvalue (variant, &value); 790s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 790s # g_value_unset (&value); 790s # ret = TRUE; 790s # } 790s # return ret; 790s # } 790s # 790s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 790s # { 790s # _org_project_signaling_iface_skeleton_handle_method_call, 790s # _org_project_signaling_iface_skeleton_handle_get_property, 790s # _org_project_signaling_iface_skeleton_handle_set_property, 790s # {NULL} 790s # }; 790s # 790s # static GDBusInterfaceInfo * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return org_project_signaling_iface_interface_info (); 790s # } 790s # 790s # static GDBusInterfaceVTable * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 790s # { 790s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 790s # } 790s # 790s # static GVariant * 790s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 790s # 790s # GVariantBuilder builder; 790s # guint n; 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 790s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #else 790s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 790s # #endif 790s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 790s # goto out; 790s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 790s # { 790s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 790s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 790s # { 790s # GVariant *value; 790s # 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); 790s # if (value != NULL) 790s # { 790s # g_variant_take_ref (value); 790s # g_variant_builder_add (&builder, "{sv}", info->name, value); 790s # g_variant_unref (value); 790s # } 790s # } 790s # } 790s # out: 790s # return g_variant_builder_end (&builder); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 790s # { 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_simple_signal ( 790s # OrgProjectSignalingIface *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void 790s # _org_project_signaling_iface_on_signal_single_arg_signal_as ( 790s # OrgProjectSignalingIface *object, 790s # const gchar *const *arg_arg_as) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # 790s # GList *connections, *l; 790s # GVariant *signal_variant; 790s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 790s # 790s # signal_variant = g_variant_ref_sink (g_variant_new ("(^as)", 790s # arg_arg_as)); 790s # for (l = connections; l != NULL; l = l->next) 790s # { 790s # GDBusConnection *connection = l->data; 790s # g_dbus_connection_emit_signal (connection, 790s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAs", 790s # signal_variant, NULL); 790s # } 790s # g_variant_unref (signal_variant); 790s # g_list_free_full (connections, g_object_unref); 790s # } 790s # 790s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #else 790s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 790s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 790s # 790s # #endif 790s # static void 790s # org_project_signaling_iface_skeleton_finalize (GObject *object) 790s # { 790s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 790s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 790s # if (skeleton->priv->changed_properties_idle_source != NULL) 790s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 790s # g_main_context_unref (skeleton->priv->context); 790s # g_mutex_clear (&skeleton->priv->lock); 790s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 790s # { 790s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 790s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 790s # #else 790s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 790s # #endif 790s # 790s # g_mutex_init (&skeleton->priv->lock); 790s # skeleton->priv->context = g_main_context_ref_thread_default (); 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 790s # { 790s # GObjectClass *gobject_class; 790s # GDBusInterfaceSkeletonClass *skeleton_class; 790s # 790s # gobject_class = G_OBJECT_CLASS (klass); 790s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 790s # 790s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 790s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 790s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 790s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 790s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 790s # 790s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 790s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 790s # #endif 790s # } 790s # 790s # static void 790s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 790s # { 790s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 790s # iface->single_arg_signal_as = _org_project_signaling_iface_on_signal_single_arg_signal_as; 790s # } 790s # 790s # /** 790s # * org_project_signaling_iface_skeleton_new: 790s # * 790s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 790s # * 790s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 790s # */ 790s # OrgProjectSignalingIface * 790s # org_project_signaling_iface_skeleton_new (void) 790s # { 790s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 790s # } 790s # Error: 790s # 790s # /tmp/tmpcqaj3zbt/tmpji3eg6cj.xml: 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # 790s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpji3eg6cj.xml', '--output', '-', '--body'] 790s # Return code: 0 790s # Output: 790s # /* 790s # * This file is generated by gdbus-codegen, do not modify it. 790s # * 790s # * The license of this code is the same as for the D-Bus interface description 790s # * it was derived from. Note that it links to GLib, so must comply with the 790s # * LGPL linking clauses. 790s # */ 790s # 790s # #ifdef HAVE_CONFIG_H 790s # # include "config.h" 790s # #endif 790s # 790s # #include 790s # #ifdef G_OS_UNIX 790s # # include 790s # #endif 790s # 790s # #ifdef G_ENABLE_DEBUG 790s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 790s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 790s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 790s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 790s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 790s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 790s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 790s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 790s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 790s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 790s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 790s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 790s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 790s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 790s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 790s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 790s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 790s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 790s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 790s # #else /* !G_ENABLE_DEBUG */ 790s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 790s # * Do not access GValues directly in your code. Instead, use the 790s # * g_value_get_*() functions 790s # */ 790s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 790s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 790s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 790s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 790s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 790s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 790s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 790s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 790s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 790s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 790s # #endif /* !G_ENABLE_DEBUG */ 790s # 790s # typedef struct 790s # { 790s # GDBusArgInfo parent_struct; 790s # gboolean use_gvariant; 790s # } _ExtendedGDBusArgInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusMethodInfo parent_struct; 790s # const gchar *signal_name; 790s # gboolean pass_fdlist; 790s # } _ExtendedGDBusMethodInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusSignalInfo parent_struct; 790s # const gchar *signal_name; 790s # } _ExtendedGDBusSignalInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusPropertyInfo parent_struct; 790s # const gchar *hyphen_name; 790s # guint use_gvariant : 1; 790s # guint emits_changed_signal : 1; 790s # } _ExtendedGDBusPropertyInfo; 790s # 790s # typedef struct 790s # { 790s # GDBusInterfaceInfo parent_struct; 790s # const gchar *hyphen_name; 790s # } _ExtendedGDBusInterfaceInfo; 790s # 790s # typedef struct 790s # { 790s # const _ExtendedGDBusPropertyInfo *info; 790s # guint prop_id; 790s # GValue orig_value; /* the value before the change */ 790s # } ChangedProperty; 790s # 790s # static void 790s # _changed_property_free (ChangedProperty *data) 790s # { 790s # g_value_unset (&data->orig_value); 790s # g_free (data); 790s # } 790s # 790s # static gboolean 790s # _g_strv_equal0 (gchar **a, gchar **b) 790s # { 790s # gboolean ret = FALSE; 790s # guint n; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # if (g_strv_length (a) != g_strv_length (b)) 790s # goto out; 790s # for (n = 0; a[n] != NULL; n++) 790s # if (g_strcmp0 (a[n], b[n]) != 0) 790s # goto out; 790s # ret = TRUE; 790s # out: 790s # return ret; 790s # } 790s # 790s # static gboolean 790s # _g_variant_equal0 (GVariant *a, GVariant *b) 790s # { 790s # gboolean ret = FALSE; 790s # if (a == NULL && b == NULL) 790s # { 790s # ret = TRUE; 790s # goto out; 790s # } 790s # if (a == NULL || b == NULL) 790s # goto out; 790s # ret = g_variant_equal (a, b); 790s # out: 790s # return ret; 790s # } 790s # 790s # G_GNUC_UNUSED static gboolean 790s # _g_value_equal (const GValue *a, const GValue *b) 790s # { 790s # gboolean ret = FALSE; 790s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 790s # switch (G_VALUE_TYPE (a)) 790s # { 790s # case G_TYPE_BOOLEAN: 790s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 790s # break; 790s # case G_TYPE_UCHAR: 790s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 790s # break; 790s # case G_TYPE_INT: 790s # ret = (g_value_get_int (a) == g_value_get_int (b)); 790s # break; 790s # case G_TYPE_UINT: 790s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 790s # break; 790s # case G_TYPE_INT64: 790s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 790s # break; 790s # case G_TYPE_UINT64: 790s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 790s # break; 790s # case G_TYPE_DOUBLE: 790s # { 790s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 790s # gdouble da = g_value_get_double (a); 790s # gdouble db = g_value_get_double (b); 790s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 790s # } 790s # break; 790s # case G_TYPE_STRING: 790s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 790s # break; 790s # case G_TYPE_VARIANT: 790s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 790s # break; 790s # default: 790s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 790s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 790s # else 790s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 790s # break; 790s # } 790s # return ret; 791s # } 791s # 791s # /* ------------------------------------------------------------------------ 791s # * Code for interface org.project.SignalingIface 791s # * ------------------------------------------------------------------------ 791s # */ 791s # 791s # /** 791s # * SECTION:OrgProjectSignalingIface 791s # * @title: OrgProjectSignalingIface 791s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 791s # * 791s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 791s # */ 791s # 791s # enum 791s # { 791s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 791s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO, 791s # }; 791s # 791s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 791s # 791s # /* ---- Introspection data for org.project.SignalingIface ---- */ 791s # 791s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 791s # { 791s # { 791s # -1, 791s # (gchar *) "SimpleSignal", 791s # NULL, 791s # NULL 791s # }, 791s # "simple-signal" 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_arg_ao = 791s # { 791s # { 791s # -1, 791s # (gchar *) "arg_ao", 791s # (gchar *) "ao", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_pointers[] = 791s # { 791s # &_org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_arg_ao.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_ao = 791s # { 791s # { 791s # -1, 791s # (gchar *) "SingleArgSignalAo", 791s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_ao_ARG_pointers, 791s # NULL 791s # }, 791s # "single-arg-signal-ao" 791s # }; 791s # 791s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 791s # { 791s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 791s # &_org_project_signaling_iface_signal_info_single_arg_signal_ao.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 791s # { 791s # { 791s # -1, 791s # (gchar *) "org.project.SignalingIface", 791s # NULL, 791s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 791s # NULL, 791s # NULL 791s # }, 791s # "org-project-signaling-iface", 791s # }; 791s # 791s # 791s # /** 791s # * org_project_signaling_iface_interface_info: 791s # * 791s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 791s # * 791s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 791s # */ 791s # GDBusInterfaceInfo * 791s # org_project_signaling_iface_interface_info (void) 791s # { 791s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_override_properties: 791s # * @klass: The class structure for a #GObject derived class. 791s # * @property_id_begin: The property id to assign to the first overridden property. 791s # * 791s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 791s # * The properties are overridden in the order they are defined. 791s # * 791s # * Returns: The last property id. 791s # */ 791s # guint 791s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 791s # { 791s # return property_id_begin - 1; 791s # } 791s # 791s # 791s # inline static void 791s # org_project_signaling_iface_signal_marshal_simple_signal ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # g_cclosure_marshal_VOID__VOID (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # org_project_signaling_iface_signal_marshal_single_arg_signal_ao ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # g_cclosure_marshal_VOID__BOXED (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # 791s # /** 791s # * OrgProjectSignalingIface: 791s # * 791s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceIface: 791s # * @parent_iface: The parent interface. 791s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 791s # * @single_arg_signal_ao: Handler for the #OrgProjectSignalingIface::single-arg-signal-ao signal. 791s # * 791s # * Virtual table for the D-Bus interface org.project.SignalingIface. 791s # */ 791s # 791s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 791s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 791s # 791s # static void 791s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 791s # { 791s # /* GObject signals for received D-Bus signals: */ 791s # /** 791s # * OrgProjectSignalingIface::simple-signal: 791s # * @object: A #OrgProjectSignalingIface. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 791s # * 791s # * 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. 791s # */ 791s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 791s # g_signal_new ("simple-signal", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 791s # NULL, 791s # NULL, 791s # org_project_signaling_iface_signal_marshal_simple_signal, 791s # G_TYPE_NONE, 791s # 0); 791s # 791s # /** 791s # * OrgProjectSignalingIface::single-arg-signal-ao: 791s # * @object: A #OrgProjectSignalingIface. 791s # * @arg_arg_ao: Argument. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAo" is received. 791s # * 791s # * 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. 791s # */ 791s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO] = 791s # g_signal_new ("single-arg-signal-ao", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_ao), 791s # NULL, 791s # NULL, 791s # org_project_signaling_iface_signal_marshal_single_arg_signal_ao, 791s # G_TYPE_NONE, 791s # 1, G_TYPE_STRV); 791s # 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_emit_simple_signal: 791s # * @object: A #OrgProjectSignalingIface. 791s # * 791s # * Emits the "SimpleSignal" D-Bus signal. 791s # */ 791s # void 791s # org_project_signaling_iface_emit_simple_signal ( 791s # OrgProjectSignalingIface *object) 791s # { 791s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_emit_single_arg_signal_ao: 791s # * @object: A #OrgProjectSignalingIface. 791s # * @arg_arg_ao: Argument to pass with the signal. 791s # * 791s # * Emits the "SingleArgSignalAo" D-Bus signal. 791s # */ 791s # void 791s # org_project_signaling_iface_emit_single_arg_signal_ao ( 791s # OrgProjectSignalingIface *object, 791s # const gchar *const *arg_arg_ao) 791s # { 791s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AO], 0, arg_arg_ao); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceProxy: 791s # * 791s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceProxyClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectSignalingIfaceProxy. 791s # */ 791s # 791s # struct _OrgProjectSignalingIfaceProxyPrivate 791s # { 791s # GData *qdata; 791s # }; 791s # 791s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 791s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_signaling_iface_proxy_finalize (GObject *object) 791s # { 791s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 791s # g_datalist_clear (&proxy->priv->qdata); 791s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # const GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 791s # const gchar *sender_name G_GNUC_UNUSED, 791s # const gchar *signal_name, 791s # GVariant *parameters) 791s # { 791s # _ExtendedGDBusSignalInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # gsize n; 791s # guint signal_id; 791s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 791s # if (info == NULL) 791s # return; 791s # num_params = g_variant_n_children (parameters); 791s # paramv = g_new0 (GValue, num_params + 1); 791s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_set_object (¶mv[0], proxy); 791s # g_variant_iter_init (&iter, parameters); 791s # n = 1; 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_signal_emitv (paramv, signal_id, 0, NULL); 791s # for (n = 0; n < num_params + 1; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 791s # GVariant *changed_properties, 791s # const gchar *const *invalidated_properties) 791s # { 791s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 791s # guint n; 791s # const gchar *key; 791s # GVariantIter *iter; 791s # _ExtendedGDBusPropertyInfo *info; 791s # g_variant_get (changed_properties, "a{sv}", &iter); 791s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 791s # g_datalist_remove_data (&proxy->priv->qdata, key); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # g_variant_iter_free (iter); 791s # for (n = 0; invalidated_properties[n] != NULL; n++) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 791s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 791s # #else 791s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 791s # #endif 791s # 791s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusProxyClass *proxy_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 791s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 791s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 791s # 791s # proxy_class = G_DBUS_PROXY_CLASS (klass); 791s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 791s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 791s # * 791s # * 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()). 791s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 791s # * 791s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_signaling_iface_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_sync: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * 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()). 791s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 791s # * 791s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_signaling_iface_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus_sync: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceSkeleton: 791s # * 791s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceSkeletonClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 791s # */ 791s # 791s # struct _OrgProjectSignalingIfaceSkeletonPrivate 791s # { 791s # GValue *properties; 791s # GList *changed_properties; 791s # GSource *changed_properties_idle_source; 791s # GMainContext *context; 791s # GMutex lock; 791s # }; 791s # 791s # static void 791s # _org_project_signaling_iface_skeleton_handle_method_call ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name, 791s # const gchar *method_name, 791s # GVariant *parameters, 791s # GDBusMethodInvocation *invocation, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # _ExtendedGDBusMethodInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # guint num_extra; 791s # gsize n; 791s # guint signal_id; 791s # GValue return_value = G_VALUE_INIT; 791s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 791s # g_assert (info != NULL); 791s # num_params = g_variant_n_children (parameters); 791s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 791s # n = 0; 791s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_set_object (¶mv[n++], skeleton); 791s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 791s # g_value_set_object (¶mv[n++], invocation); 791s # if (info->pass_fdlist) 791s # { 791s # #ifdef G_OS_UNIX 791s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 791s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 791s # #else 791s # g_assert_not_reached (); 791s # #endif 791s # } 791s # g_variant_iter_init (&iter, parameters); 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_init (&return_value, G_TYPE_BOOLEAN); 791s # g_signal_emitv (paramv, signal_id, 0, &return_value); 791s # if (!g_value_get_boolean (&return_value)) 791s # 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); 791s # g_value_unset (&return_value); 791s # for (n = 0; n < num_params + num_extra; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static GVariant * 791s # _org_project_signaling_iface_skeleton_handle_get_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # GVariant *ret; 791s # ret = NULL; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # g_value_init (&value, pspec->value_type); 791s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_value_unset (&value); 791s # } 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _org_project_signaling_iface_skeleton_handle_set_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GVariant *variant, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # gboolean ret; 791s # ret = FALSE; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # if (info->use_gvariant) 791s # g_value_set_variant (&value, variant); 791s # else 791s # g_dbus_gvariant_to_gvalue (variant, &value); 791s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # g_value_unset (&value); 791s # ret = TRUE; 791s # } 791s # return ret; 791s # } 791s # 791s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 791s # { 791s # _org_project_signaling_iface_skeleton_handle_method_call, 791s # _org_project_signaling_iface_skeleton_handle_get_property, 791s # _org_project_signaling_iface_skeleton_handle_set_property, 791s # {NULL} 791s # }; 791s # 791s # static GDBusInterfaceInfo * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return org_project_signaling_iface_interface_info (); 791s # } 791s # 791s # static GDBusInterfaceVTable * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 791s # } 791s # 791s # static GVariant * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 791s # 791s # GVariantBuilder builder; 791s # guint n; 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #else 791s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #endif 791s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 791s # goto out; 791s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 791s # { 791s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 791s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 791s # { 791s # GVariant *value; 791s # 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); 791s # if (value != NULL) 791s # { 791s # g_variant_take_ref (value); 791s # g_variant_builder_add (&builder, "{sv}", info->name, value); 791s # g_variant_unref (value); 791s # } 791s # } 791s # } 791s # out: 791s # return g_variant_builder_end (&builder); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # _org_project_signaling_iface_on_signal_simple_signal ( 791s # OrgProjectSignalingIface *object) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void 791s # _org_project_signaling_iface_on_signal_single_arg_signal_ao ( 791s # OrgProjectSignalingIface *object, 791s # const gchar *const *arg_arg_ao) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("(^ao)", 791s # arg_arg_ao)); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAo", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_signaling_iface_skeleton_finalize (GObject *object) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # g_main_context_unref (skeleton->priv->context); 791s # g_mutex_clear (&skeleton->priv->lock); 791s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 791s # #else 791s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 791s # #endif 791s # 791s # g_mutex_init (&skeleton->priv->lock); 791s # skeleton->priv->context = g_main_context_ref_thread_default (); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusInterfaceSkeletonClass *skeleton_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 791s # 791s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 791s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 791s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 791s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 791s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 791s # { 791s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 791s # iface->single_arg_signal_ao = _org_project_signaling_iface_on_signal_single_arg_signal_ao; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_skeleton_new: 791s # * 791s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_skeleton_new (void) 791s # { 791s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 791s # } 791s # Error: 791s # 791s # /tmp/tmpcqaj3zbt/tmpo8myk00s.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmpo8myk00s.xml', '--output', '-', '--body'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifdef HAVE_CONFIG_H 791s # # include "config.h" 791s # #endif 791s # 791s # #include 791s # #ifdef G_OS_UNIX 791s # # include 791s # #endif 791s # 791s # #ifdef G_ENABLE_DEBUG 791s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 791s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 791s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 791s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 791s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 791s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 791s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 791s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 791s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 791s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 791s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 791s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 791s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 791s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 791s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 791s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 791s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 791s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 791s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 791s # #else /* !G_ENABLE_DEBUG */ 791s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 791s # * Do not access GValues directly in your code. Instead, use the 791s # * g_value_get_*() functions 791s # */ 791s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 791s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 791s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 791s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 791s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 791s # #endif /* !G_ENABLE_DEBUG */ 791s # 791s # typedef struct 791s # { 791s # GDBusArgInfo parent_struct; 791s # gboolean use_gvariant; 791s # } _ExtendedGDBusArgInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusMethodInfo parent_struct; 791s # const gchar *signal_name; 791s # gboolean pass_fdlist; 791s # } _ExtendedGDBusMethodInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusSignalInfo parent_struct; 791s # const gchar *signal_name; 791s # } _ExtendedGDBusSignalInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusPropertyInfo parent_struct; 791s # const gchar *hyphen_name; 791s # guint use_gvariant : 1; 791s # guint emits_changed_signal : 1; 791s # } _ExtendedGDBusPropertyInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusInterfaceInfo parent_struct; 791s # const gchar *hyphen_name; 791s # } _ExtendedGDBusInterfaceInfo; 791s # 791s # typedef struct 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # guint prop_id; 791s # GValue orig_value; /* the value before the change */ 791s # } ChangedProperty; 791s # 791s # static void 791s # _changed_property_free (ChangedProperty *data) 791s # { 791s # g_value_unset (&data->orig_value); 791s # g_free (data); 791s # } 791s # 791s # static gboolean 791s # _g_strv_equal0 (gchar **a, gchar **b) 791s # { 791s # gboolean ret = FALSE; 791s # guint n; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # if (g_strv_length (a) != g_strv_length (b)) 791s # goto out; 791s # for (n = 0; a[n] != NULL; n++) 791s # if (g_strcmp0 (a[n], b[n]) != 0) 791s # goto out; 791s # ret = TRUE; 791s # out: 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _g_variant_equal0 (GVariant *a, GVariant *b) 791s # { 791s # gboolean ret = FALSE; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # ret = g_variant_equal (a, b); 791s # out: 791s # return ret; 791s # } 791s # 791s # G_GNUC_UNUSED static gboolean 791s # _g_value_equal (const GValue *a, const GValue *b) 791s # { 791s # gboolean ret = FALSE; 791s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 791s # switch (G_VALUE_TYPE (a)) 791s # { 791s # case G_TYPE_BOOLEAN: 791s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 791s # break; 791s # case G_TYPE_UCHAR: 791s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 791s # break; 791s # case G_TYPE_INT: 791s # ret = (g_value_get_int (a) == g_value_get_int (b)); 791s # break; 791s # case G_TYPE_UINT: 791s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 791s # break; 791s # case G_TYPE_INT64: 791s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 791s # break; 791s # case G_TYPE_UINT64: 791s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 791s # break; 791s # case G_TYPE_DOUBLE: 791s # { 791s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 791s # gdouble da = g_value_get_double (a); 791s # gdouble db = g_value_get_double (b); 791s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 791s # } 791s # break; 791s # case G_TYPE_STRING: 791s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 791s # break; 791s # case G_TYPE_VARIANT: 791s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 791s # break; 791s # default: 791s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 791s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 791s # else 791s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 791s # break; 791s # } 791s # return ret; 791s # } 791s # 791s # /* ------------------------------------------------------------------------ 791s # * Code for interface org.project.SignalingIface 791s # * ------------------------------------------------------------------------ 791s # */ 791s # 791s # /** 791s # * SECTION:OrgProjectSignalingIface 791s # * @title: OrgProjectSignalingIface 791s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 791s # * 791s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 791s # */ 791s # 791s # enum 791s # { 791s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 791s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY, 791s # }; 791s # 791s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 791s # 791s # /* ---- Introspection data for org.project.SignalingIface ---- */ 791s # 791s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 791s # { 791s # { 791s # -1, 791s # (gchar *) "SimpleSignal", 791s # NULL, 791s # NULL 791s # }, 791s # "simple-signal" 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_arg_aay = 791s # { 791s # { 791s # -1, 791s # (gchar *) "arg_aay", 791s # (gchar *) "aay", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_pointers[] = 791s # { 791s # &_org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_arg_aay.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_aay = 791s # { 791s # { 791s # -1, 791s # (gchar *) "SingleArgSignalAay", 791s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_aay_ARG_pointers, 791s # NULL 791s # }, 791s # "single-arg-signal-aay" 791s # }; 791s # 791s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 791s # { 791s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 791s # &_org_project_signaling_iface_signal_info_single_arg_signal_aay.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 791s # { 791s # { 791s # -1, 791s # (gchar *) "org.project.SignalingIface", 791s # NULL, 791s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 791s # NULL, 791s # NULL 791s # }, 791s # "org-project-signaling-iface", 791s # }; 791s # 791s # 791s # /** 791s # * org_project_signaling_iface_interface_info: 791s # * 791s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 791s # * 791s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 791s # */ 791s # GDBusInterfaceInfo * 791s # org_project_signaling_iface_interface_info (void) 791s # { 791s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_override_properties: 791s # * @klass: The class structure for a #GObject derived class. 791s # * @property_id_begin: The property id to assign to the first overridden property. 791s # * 791s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 791s # * The properties are overridden in the order they are defined. 791s # * 791s # * Returns: The last property id. 791s # */ 791s # guint 791s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 791s # { 791s # return property_id_begin - 1; 791s # } 791s # 791s # 791s # inline static void 791s # org_project_signaling_iface_signal_marshal_simple_signal ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # g_cclosure_marshal_VOID__VOID (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # org_project_signaling_iface_signal_marshal_single_arg_signal_aay ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # g_cclosure_marshal_VOID__BOXED (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # 791s # /** 791s # * OrgProjectSignalingIface: 791s # * 791s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceIface: 791s # * @parent_iface: The parent interface. 791s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 791s # * @single_arg_signal_aay: Handler for the #OrgProjectSignalingIface::single-arg-signal-aay signal. 791s # * 791s # * Virtual table for the D-Bus interface org.project.SignalingIface. 791s # */ 791s # 791s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 791s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 791s # 791s # static void 791s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 791s # { 791s # /* GObject signals for received D-Bus signals: */ 791s # /** 791s # * OrgProjectSignalingIface::simple-signal: 791s # * @object: A #OrgProjectSignalingIface. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 791s # * 791s # * 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. 791s # */ 791s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 791s # g_signal_new ("simple-signal", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 791s # NULL, 791s # NULL, 791s # org_project_signaling_iface_signal_marshal_simple_signal, 791s # G_TYPE_NONE, 791s # 0); 791s # 791s # /** 791s # * OrgProjectSignalingIface::single-arg-signal-aay: 791s # * @object: A #OrgProjectSignalingIface. 791s # * @arg_arg_aay: Argument. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAay" is received. 791s # * 791s # * 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. 791s # */ 791s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY] = 791s # g_signal_new ("single-arg-signal-aay", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_aay), 791s # NULL, 791s # NULL, 791s # org_project_signaling_iface_signal_marshal_single_arg_signal_aay, 791s # G_TYPE_NONE, 791s # 1, G_TYPE_STRV); 791s # 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_emit_simple_signal: 791s # * @object: A #OrgProjectSignalingIface. 791s # * 791s # * Emits the "SimpleSignal" D-Bus signal. 791s # */ 791s # void 791s # org_project_signaling_iface_emit_simple_signal ( 791s # OrgProjectSignalingIface *object) 791s # { 791s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_emit_single_arg_signal_aay: 791s # * @object: A #OrgProjectSignalingIface. 791s # * @arg_arg_aay: Argument to pass with the signal. 791s # * 791s # * Emits the "SingleArgSignalAay" D-Bus signal. 791s # */ 791s # void 791s # org_project_signaling_iface_emit_single_arg_signal_aay ( 791s # OrgProjectSignalingIface *object, 791s # const gchar *const *arg_arg_aay) 791s # { 791s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_AAY], 0, arg_arg_aay); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceProxy: 791s # * 791s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceProxyClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectSignalingIfaceProxy. 791s # */ 791s # 791s # struct _OrgProjectSignalingIfaceProxyPrivate 791s # { 791s # GData *qdata; 791s # }; 791s # 791s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 791s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_signaling_iface_proxy_finalize (GObject *object) 791s # { 791s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 791s # g_datalist_clear (&proxy->priv->qdata); 791s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # const GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 791s # const gchar *sender_name G_GNUC_UNUSED, 791s # const gchar *signal_name, 791s # GVariant *parameters) 791s # { 791s # _ExtendedGDBusSignalInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # gsize n; 791s # guint signal_id; 791s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 791s # if (info == NULL) 791s # return; 791s # num_params = g_variant_n_children (parameters); 791s # paramv = g_new0 (GValue, num_params + 1); 791s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_set_object (¶mv[0], proxy); 791s # g_variant_iter_init (&iter, parameters); 791s # n = 1; 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_signal_emitv (paramv, signal_id, 0, NULL); 791s # for (n = 0; n < num_params + 1; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 791s # GVariant *changed_properties, 791s # const gchar *const *invalidated_properties) 791s # { 791s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 791s # guint n; 791s # const gchar *key; 791s # GVariantIter *iter; 791s # _ExtendedGDBusPropertyInfo *info; 791s # g_variant_get (changed_properties, "a{sv}", &iter); 791s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 791s # g_datalist_remove_data (&proxy->priv->qdata, key); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # g_variant_iter_free (iter); 791s # for (n = 0; invalidated_properties[n] != NULL; n++) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 791s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 791s # #else 791s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 791s # #endif 791s # 791s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusProxyClass *proxy_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 791s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 791s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 791s # 791s # proxy_class = G_DBUS_PROXY_CLASS (klass); 791s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 791s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 791s # * 791s # * 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()). 791s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 791s # * 791s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_signaling_iface_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_sync: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * 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()). 791s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 791s # * 791s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_signaling_iface_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus_sync: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceSkeleton: 791s # * 791s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceSkeletonClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 791s # */ 791s # 791s # struct _OrgProjectSignalingIfaceSkeletonPrivate 791s # { 791s # GValue *properties; 791s # GList *changed_properties; 791s # GSource *changed_properties_idle_source; 791s # GMainContext *context; 791s # GMutex lock; 791s # }; 791s # 791s # static void 791s # _org_project_signaling_iface_skeleton_handle_method_call ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name, 791s # const gchar *method_name, 791s # GVariant *parameters, 791s # GDBusMethodInvocation *invocation, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # _ExtendedGDBusMethodInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # guint num_extra; 791s # gsize n; 791s # guint signal_id; 791s # GValue return_value = G_VALUE_INIT; 791s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 791s # g_assert (info != NULL); 791s # num_params = g_variant_n_children (parameters); 791s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 791s # n = 0; 791s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_set_object (¶mv[n++], skeleton); 791s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 791s # g_value_set_object (¶mv[n++], invocation); 791s # if (info->pass_fdlist) 791s # { 791s # #ifdef G_OS_UNIX 791s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 791s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 791s # #else 791s # g_assert_not_reached (); 791s # #endif 791s # } 791s # g_variant_iter_init (&iter, parameters); 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_init (&return_value, G_TYPE_BOOLEAN); 791s # g_signal_emitv (paramv, signal_id, 0, &return_value); 791s # if (!g_value_get_boolean (&return_value)) 791s # 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); 791s # g_value_unset (&return_value); 791s # for (n = 0; n < num_params + num_extra; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static GVariant * 791s # _org_project_signaling_iface_skeleton_handle_get_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # GVariant *ret; 791s # ret = NULL; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # g_value_init (&value, pspec->value_type); 791s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_value_unset (&value); 791s # } 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _org_project_signaling_iface_skeleton_handle_set_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GVariant *variant, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # gboolean ret; 791s # ret = FALSE; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # if (info->use_gvariant) 791s # g_value_set_variant (&value, variant); 791s # else 791s # g_dbus_gvariant_to_gvalue (variant, &value); 791s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # g_value_unset (&value); 791s # ret = TRUE; 791s # } 791s # return ret; 791s # } 791s # 791s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 791s # { 791s # _org_project_signaling_iface_skeleton_handle_method_call, 791s # _org_project_signaling_iface_skeleton_handle_get_property, 791s # _org_project_signaling_iface_skeleton_handle_set_property, 791s # {NULL} 791s # }; 791s # 791s # static GDBusInterfaceInfo * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return org_project_signaling_iface_interface_info (); 791s # } 791s # 791s # static GDBusInterfaceVTable * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 791s # } 791s # 791s # static GVariant * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 791s # 791s # GVariantBuilder builder; 791s # guint n; 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #else 791s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #endif 791s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 791s # goto out; 791s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 791s # { 791s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 791s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 791s # { 791s # GVariant *value; 791s # 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); 791s # if (value != NULL) 791s # { 791s # g_variant_take_ref (value); 791s # g_variant_builder_add (&builder, "{sv}", info->name, value); 791s # g_variant_unref (value); 791s # } 791s # } 791s # } 791s # out: 791s # return g_variant_builder_end (&builder); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # _org_project_signaling_iface_on_signal_simple_signal ( 791s # OrgProjectSignalingIface *object) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void 791s # _org_project_signaling_iface_on_signal_single_arg_signal_aay ( 791s # OrgProjectSignalingIface *object, 791s # const gchar *const *arg_arg_aay) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("(^aay)", 791s # arg_arg_aay)); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAay", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_signaling_iface_skeleton_finalize (GObject *object) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # g_main_context_unref (skeleton->priv->context); 791s # g_mutex_clear (&skeleton->priv->lock); 791s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 791s # #else 791s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 791s # #endif 791s # 791s # g_mutex_init (&skeleton->priv->lock); 791s # skeleton->priv->context = g_main_context_ref_thread_default (); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusInterfaceSkeletonClass *skeleton_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 791s # 791s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 791s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 791s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 791s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 791s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 791s # { 791s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 791s # iface->single_arg_signal_aay = _org_project_signaling_iface_on_signal_single_arg_signal_aay; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_skeleton_new: 791s # * 791s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_skeleton_new (void) 791s # { 791s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 791s # } 791s # Error: 791s # 791s # /tmp/tmpcqaj3zbt/tmp5xtcdu1k.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpcqaj3zbt/tmp5xtcdu1k.xml', '--output', '-', '--body'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifdef HAVE_CONFIG_H 791s # # include "config.h" 791s # #endif 791s # 791s # #include 791s # #ifdef G_OS_UNIX 791s # # include 791s # #endif 791s # 791s # #ifdef G_ENABLE_DEBUG 791s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 791s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 791s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 791s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 791s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 791s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 791s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 791s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 791s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 791s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 791s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 791s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 791s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 791s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 791s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 791s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 791s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 791s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 791s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 791s # #else /* !G_ENABLE_DEBUG */ 791s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 791s # * Do not access GValues directly in your code. Instead, use the 791s # * g_value_get_*() functions 791s # */ 791s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 791s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 791s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 791s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 791s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 791s # #endif /* !G_ENABLE_DEBUG */ 791s # 791s # typedef struct 791s # { 791s # GDBusArgInfo parent_struct; 791s # gboolean use_gvariant; 791s # } _ExtendedGDBusArgInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusMethodInfo parent_struct; 791s # const gchar *signal_name; 791s # gboolean pass_fdlist; 791s # } _ExtendedGDBusMethodInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusSignalInfo parent_struct; 791s # const gchar *signal_name; 791s # } _ExtendedGDBusSignalInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusPropertyInfo parent_struct; 791s # const gchar *hyphen_name; 791s # guint use_gvariant : 1; 791s # guint emits_changed_signal : 1; 791s # } _ExtendedGDBusPropertyInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusInterfaceInfo parent_struct; 791s # const gchar *hyphen_name; 791s # } _ExtendedGDBusInterfaceInfo; 791s # 791s # typedef struct 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # guint prop_id; 791s # GValue orig_value; /* the value before the change */ 791s # } ChangedProperty; 791s # 791s # static void 791s # _changed_property_free (ChangedProperty *data) 791s # { 791s # g_value_unset (&data->orig_value); 791s # g_free (data); 791s # } 791s # 791s # static gboolean 791s # _g_strv_equal0 (gchar **a, gchar **b) 791s # { 791s # gboolean ret = FALSE; 791s # guint n; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # if (g_strv_length (a) != g_strv_length (b)) 791s # goto out; 791s # for (n = 0; a[n] != NULL; n++) 791s # if (g_strcmp0 (a[n], b[n]) != 0) 791s # goto out; 791s # ret = TRUE; 791s # out: 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _g_variant_equal0 (GVariant *a, GVariant *b) 791s # { 791s # gboolean ret = FALSE; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # ret = g_variant_equal (a, b); 791s # out: 791s # return ret; 791s # } 791s # 791s # G_GNUC_UNUSED static gboolean 791s # _g_value_equal (const GValue *a, const GValue *b) 791s # { 791s # gboolean ret = FALSE; 791s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 791s # switch (G_VALUE_TYPE (a)) 791s # { 791s # case G_TYPE_BOOLEAN: 791s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 791s # break; 791s # case G_TYPE_UCHAR: 791s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 791s # break; 791s # case G_TYPE_INT: 791s # ret = (g_value_get_int (a) == g_value_get_int (b)); 791s # break; 791s # case G_TYPE_UINT: 791s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 791s # break; 791s # case G_TYPE_INT64: 791s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 791s # break; 791s # case G_TYPE_UINT64: 791s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 791s # break; 791s # case G_TYPE_DOUBLE: 791s # { 791s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 791s # gdouble da = g_value_get_double (a); 791s # gdouble db = g_value_get_double (b); 791s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 791s # } 791s # break; 791s # case G_TYPE_STRING: 791s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 791s # break; 791s # case G_TYPE_VARIANT: 791s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 791s # break; 791s # default: 791s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 791s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 791s # else 791s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 791s # break; 791s # } 791s # return ret; 791s # } 791s # 791s # /* ------------------------------------------------------------------------ 791s # * Code for interface org.project.SignalingIface 791s # * ------------------------------------------------------------------------ 791s # */ 791s # 791s # /** 791s # * SECTION:OrgProjectSignalingIface 791s # * @title: OrgProjectSignalingIface 791s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 791s # * 791s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 791s # */ 791s # 791s # enum 791s # { 791s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 791s # _ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV, 791s # }; 791s # 791s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 791s # 791s # /* ---- Introspection data for org.project.SignalingIface ---- */ 791s # 791s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 791s # { 791s # { 791s # -1, 791s # (gchar *) "SimpleSignal", 791s # NULL, 791s # NULL 791s # }, 791s # "simple-signal" 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_arg_asv = 791s # { 791s # { 791s # -1, 791s # (gchar *) "arg_asv", 791s # (gchar *) "a{sv}", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_pointers[] = 791s # { 791s # &_org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_arg_asv.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_single_arg_signal_asv = 791s # { 791s # { 791s # -1, 791s # (gchar *) "SingleArgSignalAsv", 791s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_single_arg_signal_asv_ARG_pointers, 791s # NULL 791s # }, 791s # "single-arg-signal-asv" 791s # }; 791s # 791s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 791s # { 791s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 791s # &_org_project_signaling_iface_signal_info_single_arg_signal_asv.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 791s # { 791s # { 791s # -1, 791s # (gchar *) "org.project.SignalingIface", 791s # NULL, 791s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 791s # NULL, 791s # NULL 791s # }, 791s # "org-project-signaling-iface", 791s # }; 791s # 791s # 791s # /** 791s # * org_project_signaling_iface_interface_info: 791s # * 791s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 791s # * 791s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 791s # */ 791s # GDBusInterfaceInfo * 791s # org_project_signaling_iface_interface_info (void) 791s # { 791s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_override_properties: 791s # * @klass: The class structure for a #GObject derived class. 791s # * @property_id_begin: The property id to assign to the first overridden property. 791s # * 791s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 791s # * The properties are overridden in the order they are defined. 791s # * 791s # * Returns: The last property id. 791s # */ 791s # guint 791s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 791s # { 791s # return property_id_begin - 1; 791s # } 791s # 791s # 791s # inline static void 791s # org_project_signaling_iface_signal_marshal_simple_signal ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # g_cclosure_marshal_VOID__VOID (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # org_project_signaling_iface_signal_marshal_single_arg_signal_asv ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # g_cclosure_marshal_VOID__VARIANT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # 791s # /** 791s # * OrgProjectSignalingIface: 791s # * 791s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceIface: 791s # * @parent_iface: The parent interface. 791s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 791s # * @single_arg_signal_asv: Handler for the #OrgProjectSignalingIface::single-arg-signal-asv signal. 791s # * 791s # * Virtual table for the D-Bus interface org.project.SignalingIface. 791s # */ 791s # 791s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 791s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 791s # 791s # static void 791s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 791s # { 791s # /* GObject signals for received D-Bus signals: */ 791s # /** 791s # * OrgProjectSignalingIface::simple-signal: 791s # * @object: A #OrgProjectSignalingIface. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 791s # * 791s # * 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. 791s # */ 791s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 791s # g_signal_new ("simple-signal", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 791s # NULL, 791s # NULL, 791s # org_project_signaling_iface_signal_marshal_simple_signal, 791s # G_TYPE_NONE, 791s # 0); 791s # 791s # /** 791s # * OrgProjectSignalingIface::single-arg-signal-asv: 791s # * @object: A #OrgProjectSignalingIface. 791s # * @arg_arg_asv: Argument. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "SingleArgSignalAsv" is received. 791s # * 791s # * 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. 791s # */ 791s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV] = 791s # g_signal_new ("single-arg-signal-asv", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, single_arg_signal_asv), 791s # NULL, 791s # NULL, 791s # org_project_signaling_iface_signal_marshal_single_arg_signal_asv, 791s # G_TYPE_NONE, 791s # 1, G_TYPE_VARIANT); 791s # 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_emit_simple_signal: 791s # * @object: A #OrgProjectSignalingIface. 791s # * 791s # * Emits the "SimpleSignal" D-Bus signal. 791s # */ 791s # void 791s # org_project_signaling_iface_emit_simple_signal ( 791s # OrgProjectSignalingIface *object) 791s # { 791s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_emit_single_arg_signal_asv: 791s # * @object: A #OrgProjectSignalingIface. 791s # * @arg_arg_asv: Argument to pass with the signal. 791s # * 791s # * Emits the "SingleArgSignalAsv" D-Bus signal. 791s # */ 791s # void 791s # org_project_signaling_iface_emit_single_arg_signal_asv ( 791s # OrgProjectSignalingIface *object, 791s # GVariant *arg_arg_asv) 791s # { 791s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SINGLE_ARG_SIGNAL_ASV], 0, arg_arg_asv); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceProxy: 791s # * 791s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceProxyClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectSignalingIfaceProxy. 791s # */ 791s # 791s # struct _OrgProjectSignalingIfaceProxyPrivate 791s # { 791s # GData *qdata; 791s # }; 791s # 791s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 791s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_signaling_iface_proxy_finalize (GObject *object) 791s # { 791s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 791s # g_datalist_clear (&proxy->priv->qdata); 791s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # const GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 791s # const gchar *sender_name G_GNUC_UNUSED, 791s # const gchar *signal_name, 791s # GVariant *parameters) 791s # { 791s # _ExtendedGDBusSignalInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # gsize n; 791s # guint signal_id; 791s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 791s # if (info == NULL) 791s # return; 791s # num_params = g_variant_n_children (parameters); 791s # paramv = g_new0 (GValue, num_params + 1); 791s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_set_object (¶mv[0], proxy); 791s # g_variant_iter_init (&iter, parameters); 791s # n = 1; 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_signal_emitv (paramv, signal_id, 0, NULL); 791s # for (n = 0; n < num_params + 1; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 791s # GVariant *changed_properties, 791s # const gchar *const *invalidated_properties) 791s # { 791s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 791s # guint n; 791s # const gchar *key; 791s # GVariantIter *iter; 791s # _ExtendedGDBusPropertyInfo *info; 791s # g_variant_get (changed_properties, "a{sv}", &iter); 791s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 791s # g_datalist_remove_data (&proxy->priv->qdata, key); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # g_variant_iter_free (iter); 791s # for (n = 0; invalidated_properties[n] != NULL; n++) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 791s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 791s # #else 791s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 791s # #endif 791s # 791s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusProxyClass *proxy_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 791s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 791s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 791s # 791s # proxy_class = G_DBUS_PROXY_CLASS (klass); 791s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 791s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 791s # * 791s # * 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()). 791s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 791s # * 791s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_signaling_iface_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_sync: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * 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()). 791s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 791s # * 791s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_signaling_iface_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus_sync: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceSkeleton: 791s # * 791s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceSkeletonClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 791s # */ 791s # 791s # struct _OrgProjectSignalingIfaceSkeletonPrivate 791s # { 791s # GValue *properties; 791s # GList *changed_properties; 791s # GSource *changed_properties_idle_source; 791s # GMainContext *context; 791s # GMutex lock; 791s # }; 791s # 791s # static void 791s # _org_project_signaling_iface_skeleton_handle_method_call ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name, 791s # const gchar *method_name, 791s # GVariant *parameters, 791s # GDBusMethodInvocation *invocation, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # _ExtendedGDBusMethodInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # guint num_extra; 791s # gsize n; 791s # guint signal_id; 791s # GValue return_value = G_VALUE_INIT; 791s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 791s # g_assert (info != NULL); 791s # num_params = g_variant_n_children (parameters); 791s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 791s # n = 0; 791s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_set_object (¶mv[n++], skeleton); 791s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 791s # g_value_set_object (¶mv[n++], invocation); 791s # if (info->pass_fdlist) 791s # { 791s # #ifdef G_OS_UNIX 791s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 791s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 791s # #else 791s # g_assert_not_reached (); 791s # #endif 791s # } 791s # g_variant_iter_init (&iter, parameters); 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_init (&return_value, G_TYPE_BOOLEAN); 791s # g_signal_emitv (paramv, signal_id, 0, &return_value); 791s # if (!g_value_get_boolean (&return_value)) 791s # 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); 791s # g_value_unset (&return_value); 791s # for (n = 0; n < num_params + num_extra; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static GVariant * 791s # _org_project_signaling_iface_skeleton_handle_get_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # GVariant *ret; 791s # ret = NULL; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # g_value_init (&value, pspec->value_type); 791s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_value_unset (&value); 791s # } 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _org_project_signaling_iface_skeleton_handle_set_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GVariant *variant, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # gboolean ret; 791s # ret = FALSE; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # if (info->use_gvariant) 791s # g_value_set_variant (&value, variant); 791s # else 791s # g_dbus_gvariant_to_gvalue (variant, &value); 791s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # g_value_unset (&value); 791s # ret = TRUE; 791s # } 791s # return ret; 791s # } 791s # 791s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 791s # { 791s # _org_project_signaling_iface_skeleton_handle_method_call, 791s # _org_project_signaling_iface_skeleton_handle_get_property, 791s # _org_project_signaling_iface_skeleton_handle_set_property, 791s # {NULL} 791s # }; 791s # 791s # static GDBusInterfaceInfo * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return org_project_signaling_iface_interface_info (); 791s # } 791s # 791s # static GDBusInterfaceVTable * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 791s # } 791s # 791s # static GVariant * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 791s # 791s # GVariantBuilder builder; 791s # guint n; 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #else 791s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #endif 791s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 791s # goto out; 791s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 791s # { 791s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 791s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 791s # { 791s # GVariant *value; 791s # 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); 791s # if (value != NULL) 791s # { 791s # g_variant_take_ref (value); 791s # g_variant_builder_add (&builder, "{sv}", info->name, value); 791s # g_variant_unref (value); 791s # } 791s # } 791s # } 791s # out: 791s # return g_variant_builder_end (&builder); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # _org_project_signaling_iface_on_signal_simple_signal ( 791s # OrgProjectSignalingIface *object) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void 791s # _org_project_signaling_iface_on_signal_single_arg_signal_asv ( 791s # OrgProjectSignalingIface *object, 791s # GVariant *arg_arg_asv) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("(@a{sv})", 791s # arg_arg_asv)); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SingleArgSignalAsv", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_signaling_iface_skeleton_finalize (GObject *object) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # g_main_context_unref (skeleton->priv->context); 791s # g_mutex_clear (&skeleton->priv->lock); 791s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 791s # #else 791s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 791s # #endif 791s # 791s # g_mutex_init (&skeleton->priv->lock); 791s # skeleton->priv->context = g_main_context_ref_thread_default (); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusInterfaceSkeletonClass *skeleton_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 791s # 791s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 791s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 791s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 791s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 791s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 791s # { 791s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 791s # iface->single_arg_signal_asv = _org_project_signaling_iface_on_signal_single_arg_signal_asv; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_skeleton_new: 791s # * 791s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_skeleton_new (void) 791s # { 791s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 791s # } 791s # Error: 791s ok 24 __main__.TestCodegen.test_generate_signals_marshallers_multiple_args 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpqanj2qzi 791s # /tmp/tmpqanj2qzi/tmpg24hd804.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpqanj2qzi/tmpg24hd804.xml', '--output', '-', '--body'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifdef HAVE_CONFIG_H 791s # # include "config.h" 791s # #endif 791s # 791s # #include 791s # #ifdef G_OS_UNIX 791s # # include 791s # #endif 791s # 791s # #ifdef G_ENABLE_DEBUG 791s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 791s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 791s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 791s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 791s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 791s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 791s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 791s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 791s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 791s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 791s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 791s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 791s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 791s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 791s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 791s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 791s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 791s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 791s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 791s # #else /* !G_ENABLE_DEBUG */ 791s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 791s # * Do not access GValues directly in your code. Instead, use the 791s # * g_value_get_*() functions 791s # */ 791s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 791s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 791s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 791s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 791s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 791s # #endif /* !G_ENABLE_DEBUG */ 791s # 791s # typedef struct 791s # { 791s # GDBusArgInfo parent_struct; 791s # gboolean use_gvariant; 791s # } _ExtendedGDBusArgInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusMethodInfo parent_struct; 791s # const gchar *signal_name; 791s # gboolean pass_fdlist; 791s # } _ExtendedGDBusMethodInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusSignalInfo parent_struct; 791s # const gchar *signal_name; 791s # } _ExtendedGDBusSignalInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusPropertyInfo parent_struct; 791s # const gchar *hyphen_name; 791s # guint use_gvariant : 1; 791s # guint emits_changed_signal : 1; 791s # } _ExtendedGDBusPropertyInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusInterfaceInfo parent_struct; 791s # const gchar *hyphen_name; 791s # } _ExtendedGDBusInterfaceInfo; 791s # 791s # typedef struct 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # guint prop_id; 791s # GValue orig_value; /* the value before the change */ 791s # } ChangedProperty; 791s # 791s # static void 791s # _changed_property_free (ChangedProperty *data) 791s # { 791s # g_value_unset (&data->orig_value); 791s # g_free (data); 791s # } 791s # 791s # static gboolean 791s # _g_strv_equal0 (gchar **a, gchar **b) 791s # { 791s # gboolean ret = FALSE; 791s # guint n; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # if (g_strv_length (a) != g_strv_length (b)) 791s # goto out; 791s # for (n = 0; a[n] != NULL; n++) 791s # if (g_strcmp0 (a[n], b[n]) != 0) 791s # goto out; 791s # ret = TRUE; 791s # out: 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _g_variant_equal0 (GVariant *a, GVariant *b) 791s # { 791s # gboolean ret = FALSE; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # ret = g_variant_equal (a, b); 791s # out: 791s # return ret; 791s # } 791s # 791s # G_GNUC_UNUSED static gboolean 791s # _g_value_equal (const GValue *a, const GValue *b) 791s # { 791s # gboolean ret = FALSE; 791s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 791s # switch (G_VALUE_TYPE (a)) 791s # { 791s # case G_TYPE_BOOLEAN: 791s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 791s # break; 791s # case G_TYPE_UCHAR: 791s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 791s # break; 791s # case G_TYPE_INT: 791s # ret = (g_value_get_int (a) == g_value_get_int (b)); 791s # break; 791s # case G_TYPE_UINT: 791s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 791s # break; 791s # case G_TYPE_INT64: 791s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 791s # break; 791s # case G_TYPE_UINT64: 791s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 791s # break; 791s # case G_TYPE_DOUBLE: 791s # { 791s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 791s # gdouble da = g_value_get_double (a); 791s # gdouble db = g_value_get_double (b); 791s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 791s # } 791s # break; 791s # case G_TYPE_STRING: 791s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 791s # break; 791s # case G_TYPE_VARIANT: 791s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 791s # break; 791s # default: 791s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 791s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 791s # else 791s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 791s # break; 791s # } 791s # return ret; 791s # } 791s # 791s # static void 791s # _g_dbus_codegen_marshal_VOID__BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT ( 791s # GClosure *closure, 791s # GValue *return_value G_GNUC_UNUSED, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint G_GNUC_UNUSED, 791s # void *marshal_data) 791s # { 791s # typedef void (*_GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 791s # (void *data1, 791s # gboolean arg_an_b, 791s # guchar arg_an_y, 791s # gint16 arg_an_n, 791s # guint16 arg_an_q, 791s # gint arg_an_i, 791s # guint arg_an_u, 791s # gint64 arg_an_x, 791s # guint64 arg_an_t, 791s # gdouble arg_an_d, 791s # const gchar *arg_an_s, 791s # const gchar *arg_an_o, 791s # const gchar *arg_an_g, 791s # GVariant *arg_an_h, 791s # const gchar *arg_an_ay, 791s # const gchar *const *arg_an_as, 791s # const gchar *const *arg_an_ao, 791s # const gchar *const *arg_an_aay, 791s # GVariant *arg_an_asv, 791s # void *data2); 791s # _GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc callback; 791s # GCClosure *cc = (GCClosure*) closure; 791s # void *data1, *data2; 791s # 791s # g_return_if_fail (n_param_values == 19); 791s # 791s # if (G_CCLOSURE_SWAP_DATA (closure)) 791s # { 791s # data1 = closure->data; 791s # data2 = g_value_peek_pointer (param_values + 0); 791s # } 791s # else 791s # { 791s # data1 = g_value_peek_pointer (param_values + 0); 791s # data2 = closure->data; 791s # } 791s # 791s # callback = (_GDbusCodegenMarshalVoid_BooleanUcharIntUintIntUintInt64Uint64DoubleStringStringStringVariantStringBoxedBoxedBoxedVariantFunc) 791s # (marshal_data ? marshal_data : cc->callback); 791s # 791s # callback (data1, 791s # g_marshal_value_peek_boolean (param_values + 1), 791s # g_marshal_value_peek_uchar (param_values + 2), 791s # g_marshal_value_peek_int (param_values + 3), 791s # g_marshal_value_peek_uint (param_values + 4), 791s # g_marshal_value_peek_int (param_values + 5), 791s # g_marshal_value_peek_uint (param_values + 6), 791s # g_marshal_value_peek_int64 (param_values + 7), 791s # g_marshal_value_peek_uint64 (param_values + 8), 791s # g_marshal_value_peek_double (param_values + 9), 791s # g_marshal_value_peek_string (param_values + 10), 791s # g_marshal_value_peek_string (param_values + 11), 791s # g_marshal_value_peek_string (param_values + 12), 791s # g_marshal_value_peek_variant (param_values + 13), 791s # g_marshal_value_peek_string (param_values + 14), 791s # g_marshal_value_peek_boxed (param_values + 15), 791s # g_marshal_value_peek_boxed (param_values + 16), 791s # g_marshal_value_peek_boxed (param_values + 17), 791s # g_marshal_value_peek_variant (param_values + 18), 791s # data2); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ 791s # * Code for interface org.project.SignalingIface 791s # * ------------------------------------------------------------------------ 791s # */ 791s # 791s # /** 791s # * SECTION:OrgProjectSignalingIface 791s # * @title: OrgProjectSignalingIface 791s # * @short_description: Generated C code for the org.project.SignalingIface D-Bus interface 791s # * 791s # * This section contains code for working with the org.project.SignalingIface D-Bus interface in C. 791s # */ 791s # 791s # enum 791s # { 791s # _ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL, 791s # _ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS, 791s # }; 791s # 791s # static unsigned _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[2] = { 0 }; 791s # 791s # /* ---- Introspection data for org.project.SignalingIface ---- */ 791s # 791s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_simple_signal = 791s # { 791s # { 791s # -1, 791s # (gchar *) "SimpleSignal", 791s # NULL, 791s # NULL 791s # }, 791s # "simple-signal" 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_b = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_b", 791s # (gchar *) "b", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_y = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_y", 791s # (gchar *) "y", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_n = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_n", 791s # (gchar *) "n", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_q = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_q", 791s # (gchar *) "q", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_i = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_i", 791s # (gchar *) "i", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_u = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_u", 791s # (gchar *) "u", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_x = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_x", 791s # (gchar *) "x", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_t = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_t", 791s # (gchar *) "t", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_d = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_d", 791s # (gchar *) "d", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_s = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_s", 791s # (gchar *) "s", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_o = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_o", 791s # (gchar *) "o", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_g = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_g", 791s # (gchar *) "g", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_h = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_h", 791s # (gchar *) "h", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ay = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_ay", 791s # (gchar *) "ay", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_as = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_as", 791s # (gchar *) "as", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ao = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_ao", 791s # (gchar *) "ao", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_aay = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_aay", 791s # (gchar *) "aay", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusArgInfo _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_asv = 791s # { 791s # { 791s # -1, 791s # (gchar *) "an_asv", 791s # (gchar *) "a{sv}", 791s # NULL 791s # }, 791s # FALSE 791s # }; 791s # 791s # static const GDBusArgInfo * const _org_project_signaling_iface_signal_info_signal_with_many_args_ARG_pointers[] = 791s # { 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_b.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_y.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_n.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_q.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_i.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_u.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_x.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_t.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_d.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_s.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_o.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_g.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_h.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ay.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_as.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_ao.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_aay.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_an_asv.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusSignalInfo _org_project_signaling_iface_signal_info_signal_with_many_args = 791s # { 791s # { 791s # -1, 791s # (gchar *) "SignalWithManyArgs", 791s # (GDBusArgInfo **) &_org_project_signaling_iface_signal_info_signal_with_many_args_ARG_pointers, 791s # NULL 791s # }, 791s # "signal-with-many-args" 791s # }; 791s # 791s # static const GDBusSignalInfo * const _org_project_signaling_iface_signal_info_pointers[] = 791s # { 791s # &_org_project_signaling_iface_signal_info_simple_signal.parent_struct, 791s # &_org_project_signaling_iface_signal_info_signal_with_many_args.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusInterfaceInfo _org_project_signaling_iface_interface_info = 791s # { 791s # { 791s # -1, 791s # (gchar *) "org.project.SignalingIface", 791s # NULL, 791s # (GDBusSignalInfo **) &_org_project_signaling_iface_signal_info_pointers, 791s # NULL, 791s # NULL 791s # }, 791s # "org-project-signaling-iface", 791s # }; 791s # 791s # 791s # /** 791s # * org_project_signaling_iface_interface_info: 791s # * 791s # * Gets a machine-readable description of the org.project.SignalingIface D-Bus interface. 791s # * 791s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 791s # */ 791s # GDBusInterfaceInfo * 791s # org_project_signaling_iface_interface_info (void) 791s # { 791s # return (GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_override_properties: 791s # * @klass: The class structure for a #GObject derived class. 791s # * @property_id_begin: The property id to assign to the first overridden property. 791s # * 791s # * Overrides all #GObject properties in the #OrgProjectSignalingIface interface for a concrete class. 791s # * The properties are overridden in the order they are defined. 791s # * 791s # * Returns: The last property id. 791s # */ 791s # guint 791s # org_project_signaling_iface_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 791s # { 791s # return property_id_begin - 1; 791s # } 791s # 791s # 791s # inline static void 791s # org_project_signaling_iface_signal_marshal_simple_signal ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # g_cclosure_marshal_VOID__VOID (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # org_project_signaling_iface_signal_marshal_signal_with_many_args ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # _g_dbus_codegen_marshal_VOID__BOOLEAN_UCHAR_INT_UINT_INT_UINT_INT64_UINT64_DOUBLE_STRING_STRING_STRING_VARIANT_STRING_BOXED_BOXED_BOXED_VARIANT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # 791s # /** 791s # * OrgProjectSignalingIface: 791s # * 791s # * Abstract interface type for the D-Bus interface org.project.SignalingIface. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceIface: 791s # * @parent_iface: The parent interface. 791s # * @signal_with_many_args: Handler for the #OrgProjectSignalingIface::signal-with-many-args signal. 791s # * @simple_signal: Handler for the #OrgProjectSignalingIface::simple-signal signal. 791s # * 791s # * Virtual table for the D-Bus interface org.project.SignalingIface. 791s # */ 791s # 791s # typedef OrgProjectSignalingIfaceIface OrgProjectSignalingIfaceInterface; 791s # G_DEFINE_INTERFACE (OrgProjectSignalingIface, org_project_signaling_iface, G_TYPE_OBJECT) 791s # 791s # static void 791s # org_project_signaling_iface_default_init (OrgProjectSignalingIfaceIface *iface) 791s # { 791s # /* GObject signals for received D-Bus signals: */ 791s # /** 791s # * OrgProjectSignalingIface::simple-signal: 791s # * @object: A #OrgProjectSignalingIface. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "SimpleSignal" is received. 791s # * 791s # * 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. 791s # */ 791s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL] = 791s # g_signal_new ("simple-signal", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, simple_signal), 791s # NULL, 791s # NULL, 791s # org_project_signaling_iface_signal_marshal_simple_signal, 791s # G_TYPE_NONE, 791s # 0); 791s # 791s # /** 791s # * OrgProjectSignalingIface::signal-with-many-args: 791s # * @object: A #OrgProjectSignalingIface. 791s # * @arg_an_b: Argument. 791s # * @arg_an_y: Argument. 791s # * @arg_an_n: Argument. 791s # * @arg_an_q: Argument. 791s # * @arg_an_i: Argument. 791s # * @arg_an_u: Argument. 791s # * @arg_an_x: Argument. 791s # * @arg_an_t: Argument. 791s # * @arg_an_d: Argument. 791s # * @arg_an_s: Argument. 791s # * @arg_an_o: Argument. 791s # * @arg_an_g: Argument. 791s # * @arg_an_h: Argument. 791s # * @arg_an_ay: Argument. 791s # * @arg_an_as: Argument. 791s # * @arg_an_ao: Argument. 791s # * @arg_an_aay: Argument. 791s # * @arg_an_asv: Argument. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "SignalWithManyArgs" is received. 791s # * 791s # * 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. 791s # */ 791s # _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIGNAL_WITH_MANY_ARGS] = 791s # g_signal_new ("signal-with-many-args", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectSignalingIfaceIface, signal_with_many_args), 791s # NULL, 791s # NULL, 791s # org_project_signaling_iface_signal_marshal_signal_with_many_args, 791s # G_TYPE_NONE, 791s # 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); 791s # 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_emit_simple_signal: 791s # * @object: A #OrgProjectSignalingIface. 791s # * 791s # * Emits the "SimpleSignal" D-Bus signal. 791s # */ 791s # void 791s # org_project_signaling_iface_emit_simple_signal ( 791s # OrgProjectSignalingIface *object) 791s # { 791s # g_signal_emit (object, _ORG_PROJECT_SIGNALING_IFACE_SIGNALS[_ORG_PROJECT_SIGNALING_IFACE_SIMPLE_SIGNAL], 0); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_emit_signal_with_many_args: 791s # * @object: A #OrgProjectSignalingIface. 791s # * @arg_an_b: Argument to pass with the signal. 791s # * @arg_an_y: Argument to pass with the signal. 791s # * @arg_an_n: Argument to pass with the signal. 791s # * @arg_an_q: Argument to pass with the signal. 791s # * @arg_an_i: Argument to pass with the signal. 791s # * @arg_an_u: Argument to pass with the signal. 791s # * @arg_an_x: Argument to pass with the signal. 791s # * @arg_an_t: Argument to pass with the signal. 791s # * @arg_an_d: Argument to pass with the signal. 791s # * @arg_an_s: Argument to pass with the signal. 791s # * @arg_an_o: Argument to pass with the signal. 791s # * @arg_an_g: Argument to pass with the signal. 791s # * @arg_an_h: Argument to pass with the signal. 791s # * @arg_an_ay: Argument to pass with the signal. 791s # * @arg_an_as: Argument to pass with the signal. 791s # * @arg_an_ao: Argument to pass with the signal. 791s # * @arg_an_aay: Argument to pass with the signal. 791s # * @arg_an_asv: Argument to pass with the signal. 791s # * 791s # * Emits the "SignalWithManyArgs" D-Bus signal. 791s # */ 791s # void 791s # org_project_signaling_iface_emit_signal_with_many_args ( 791s # OrgProjectSignalingIface *object, 791s # gboolean arg_an_b, 791s # guchar arg_an_y, 791s # gint16 arg_an_n, 791s # guint16 arg_an_q, 791s # gint arg_an_i, 791s # guint arg_an_u, 791s # gint64 arg_an_x, 791s # guint64 arg_an_t, 791s # gdouble arg_an_d, 791s # const gchar *arg_an_s, 791s # const gchar *arg_an_o, 791s # const gchar *arg_an_g, 791s # GVariant *arg_an_h, 791s # const gchar *arg_an_ay, 791s # const gchar *const *arg_an_as, 791s # const gchar *const *arg_an_ao, 791s # const gchar *const *arg_an_aay, 791s # GVariant *arg_an_asv) 791s # { 791s # 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); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceProxy: 791s # * 791s # * The #OrgProjectSignalingIfaceProxy structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceProxyClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectSignalingIfaceProxy. 791s # */ 791s # 791s # struct _OrgProjectSignalingIfaceProxyPrivate 791s # { 791s # GData *qdata; 791s # }; 791s # 791s # static void org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 791s # G_ADD_PRIVATE (OrgProjectSignalingIfaceProxy) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceProxy, org_project_signaling_iface_proxy, G_TYPE_DBUS_PROXY, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_proxy_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_signaling_iface_proxy_finalize (GObject *object) 791s # { 791s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (object); 791s # g_datalist_clear (&proxy->priv->qdata); 791s # G_OBJECT_CLASS (org_project_signaling_iface_proxy_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_get_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_set_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # const GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_g_signal (GDBusProxy *proxy, 791s # const gchar *sender_name G_GNUC_UNUSED, 791s # const gchar *signal_name, 791s # GVariant *parameters) 791s # { 791s # _ExtendedGDBusSignalInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # gsize n; 791s # guint signal_id; 791s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, signal_name); 791s # if (info == NULL) 791s # return; 791s # num_params = g_variant_n_children (parameters); 791s # paramv = g_new0 (GValue, num_params + 1); 791s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_set_object (¶mv[0], proxy); 791s # g_variant_iter_init (&iter, parameters); 791s # n = 1; 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_signal_emitv (paramv, signal_id, 0, NULL); 791s # for (n = 0; n < num_params + 1; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_g_properties_changed (GDBusProxy *_proxy, 791s # GVariant *changed_properties, 791s # const gchar *const *invalidated_properties) 791s # { 791s # OrgProjectSignalingIfaceProxy *proxy = ORG_PROJECT_SIGNALING_IFACE_PROXY (_proxy); 791s # guint n; 791s # const gchar *key; 791s # GVariantIter *iter; 791s # _ExtendedGDBusPropertyInfo *info; 791s # g_variant_get (changed_properties, "a{sv}", &iter); 791s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, key); 791s # g_datalist_remove_data (&proxy->priv->qdata, key); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # g_variant_iter_free (iter); 791s # for (n = 0; invalidated_properties[n] != NULL; n++) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, invalidated_properties[n]); 791s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_init (OrgProjectSignalingIfaceProxy *proxy) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # proxy->priv = org_project_signaling_iface_proxy_get_instance_private (proxy); 791s # #else 791s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_SIGNALING_IFACE_PROXY, OrgProjectSignalingIfaceProxyPrivate); 791s # #endif 791s # 791s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_signaling_iface_interface_info ()); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_class_init (OrgProjectSignalingIfaceProxyClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusProxyClass *proxy_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_signaling_iface_proxy_finalize; 791s # gobject_class->get_property = org_project_signaling_iface_proxy_get_property; 791s # gobject_class->set_property = org_project_signaling_iface_proxy_set_property; 791s # 791s # proxy_class = G_DBUS_PROXY_CLASS (klass); 791s # proxy_class->g_signal = org_project_signaling_iface_proxy_g_signal; 791s # proxy_class->g_properties_changed = org_project_signaling_iface_proxy_g_properties_changed; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceProxyPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_proxy_iface_init (OrgProjectSignalingIfaceIface *iface G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new() for more details. 791s # * 791s # * 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()). 791s # * You can then call org_project_signaling_iface_proxy_new_finish() to get the result of the operation. 791s # * 791s # * See org_project_signaling_iface_proxy_new_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_signaling_iface_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_signaling_iface_proxy_new(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_sync: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Synchronously creates a proxy for the D-Bus interface org.project.SignalingIface. See g_dbus_proxy_new_sync() for more details. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_signaling_iface_proxy_new() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Like org_project_signaling_iface_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * 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()). 791s # * You can then call org_project_signaling_iface_proxy_new_for_bus_finish() to get the result of the operation. 791s # * 791s # * See org_project_signaling_iface_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_signaling_iface_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_signaling_iface_proxy_new_for_bus(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_signaling_iface_proxy_new_for_bus(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_proxy_new_for_bus_sync: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Like org_project_signaling_iface_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_signaling_iface_proxy_new_for_bus() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_SIGNALING_IFACE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceSkeleton: 791s # * 791s # * The #OrgProjectSignalingIfaceSkeleton structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectSignalingIfaceSkeletonClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectSignalingIfaceSkeleton. 791s # */ 791s # 791s # struct _OrgProjectSignalingIfaceSkeletonPrivate 791s # { 791s # GValue *properties; 791s # GList *changed_properties; 791s # GSource *changed_properties_idle_source; 791s # GMainContext *context; 791s # GMutex lock; 791s # }; 791s # 791s # static void 791s # _org_project_signaling_iface_skeleton_handle_method_call ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name, 791s # const gchar *method_name, 791s # GVariant *parameters, 791s # GDBusMethodInvocation *invocation, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # _ExtendedGDBusMethodInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # guint num_extra; 791s # gsize n; 791s # guint signal_id; 791s # GValue return_value = G_VALUE_INIT; 791s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 791s # g_assert (info != NULL); 791s # num_params = g_variant_n_children (parameters); 791s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 791s # n = 0; 791s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_set_object (¶mv[n++], skeleton); 791s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 791s # g_value_set_object (¶mv[n++], invocation); 791s # if (info->pass_fdlist) 791s # { 791s # #ifdef G_OS_UNIX 791s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 791s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 791s # #else 791s # g_assert_not_reached (); 791s # #endif 791s # } 791s # g_variant_iter_init (&iter, parameters); 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_SIGNALING_IFACE); 791s # g_value_init (&return_value, G_TYPE_BOOLEAN); 791s # g_signal_emitv (paramv, signal_id, 0, &return_value); 791s # if (!g_value_get_boolean (&return_value)) 791s # 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); 791s # g_value_unset (&return_value); 791s # for (n = 0; n < num_params + num_extra; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static GVariant * 791s # _org_project_signaling_iface_skeleton_handle_get_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # GVariant *ret; 791s # ret = NULL; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # g_value_init (&value, pspec->value_type); 791s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_value_unset (&value); 791s # } 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _org_project_signaling_iface_skeleton_handle_set_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GVariant *variant, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # gboolean ret; 791s # ret = FALSE; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_signaling_iface_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # if (info->use_gvariant) 791s # g_value_set_variant (&value, variant); 791s # else 791s # g_dbus_gvariant_to_gvalue (variant, &value); 791s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # g_value_unset (&value); 791s # ret = TRUE; 791s # } 791s # return ret; 791s # } 791s # 791s # static const GDBusInterfaceVTable _org_project_signaling_iface_skeleton_vtable = 791s # { 791s # _org_project_signaling_iface_skeleton_handle_method_call, 791s # _org_project_signaling_iface_skeleton_handle_get_property, 791s # _org_project_signaling_iface_skeleton_handle_set_property, 791s # {NULL} 791s # }; 791s # 791s # static GDBusInterfaceInfo * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return org_project_signaling_iface_interface_info (); 791s # } 791s # 791s # static GDBusInterfaceVTable * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return (GDBusInterfaceVTable *) &_org_project_signaling_iface_skeleton_vtable; 791s # } 791s # 791s # static GVariant * 791s # org_project_signaling_iface_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (_skeleton); 791s # 791s # GVariantBuilder builder; 791s # guint n; 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #else 791s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #endif 791s # if (_org_project_signaling_iface_interface_info.parent_struct.properties == NULL) 791s # goto out; 791s # for (n = 0; _org_project_signaling_iface_interface_info.parent_struct.properties[n] != NULL; n++) 791s # { 791s # GDBusPropertyInfo *info = _org_project_signaling_iface_interface_info.parent_struct.properties[n]; 791s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 791s # { 791s # GVariant *value; 791s # 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); 791s # if (value != NULL) 791s # { 791s # g_variant_take_ref (value); 791s # g_variant_builder_add (&builder, "{sv}", info->name, value); 791s # g_variant_unref (value); 791s # } 791s # } 791s # } 791s # out: 791s # return g_variant_builder_end (&builder); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # _org_project_signaling_iface_on_signal_simple_signal ( 791s # OrgProjectSignalingIface *object) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SimpleSignal", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void 791s # _org_project_signaling_iface_on_signal_signal_with_many_args ( 791s # OrgProjectSignalingIface *object, 791s # gboolean arg_an_b, 791s # guchar arg_an_y, 791s # gint16 arg_an_n, 791s # guint16 arg_an_q, 791s # gint arg_an_i, 791s # guint arg_an_u, 791s # gint64 arg_an_x, 791s # guint64 arg_an_t, 791s # gdouble arg_an_d, 791s # const gchar *arg_an_s, 791s # const gchar *arg_an_o, 791s # const gchar *arg_an_g, 791s # GVariant *arg_an_h, 791s # const gchar *arg_an_ay, 791s # const gchar *const *arg_an_as, 791s # const gchar *const *arg_an_ao, 791s # const gchar *const *arg_an_aay, 791s # GVariant *arg_an_asv) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("(bynqiuxtdsog@h^ay^as^ao^aay@a{sv})", 791s # arg_an_b, 791s # arg_an_y, 791s # arg_an_n, 791s # arg_an_q, 791s # arg_an_i, 791s # arg_an_u, 791s # arg_an_x, 791s # arg_an_t, 791s # arg_an_d, 791s # arg_an_s, 791s # arg_an_o, 791s # arg_an_g, 791s # arg_an_h, 791s # arg_an_ay, 791s # arg_an_as, 791s # arg_an_ao, 791s # arg_an_aay, 791s # arg_an_asv)); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "org.project.SignalingIface", "SignalWithManyArgs", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_ADD_PRIVATE (OrgProjectSignalingIfaceSkeleton) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectSignalingIfaceSkeleton, org_project_signaling_iface_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_SIGNALING_IFACE, org_project_signaling_iface_skeleton_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_signaling_iface_skeleton_finalize (GObject *object) 791s # { 791s # OrgProjectSignalingIfaceSkeleton *skeleton = ORG_PROJECT_SIGNALING_IFACE_SKELETON (object); 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # g_main_context_unref (skeleton->priv->context); 791s # g_mutex_clear (&skeleton->priv->lock); 791s # G_OBJECT_CLASS (org_project_signaling_iface_skeleton_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_init (OrgProjectSignalingIfaceSkeleton *skeleton) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # skeleton->priv = org_project_signaling_iface_skeleton_get_instance_private (skeleton); 791s # #else 791s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, OrgProjectSignalingIfaceSkeletonPrivate); 791s # #endif 791s # 791s # g_mutex_init (&skeleton->priv->lock); 791s # skeleton->priv->context = g_main_context_ref_thread_default (); 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_class_init (OrgProjectSignalingIfaceSkeletonClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusInterfaceSkeletonClass *skeleton_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_signaling_iface_skeleton_finalize; 791s # 791s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 791s # skeleton_class->get_info = org_project_signaling_iface_skeleton_dbus_interface_get_info; 791s # skeleton_class->get_properties = org_project_signaling_iface_skeleton_dbus_interface_get_properties; 791s # skeleton_class->flush = org_project_signaling_iface_skeleton_dbus_interface_flush; 791s # skeleton_class->get_vtable = org_project_signaling_iface_skeleton_dbus_interface_get_vtable; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectSignalingIfaceSkeletonPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_signaling_iface_skeleton_iface_init (OrgProjectSignalingIfaceIface *iface) 791s # { 791s # iface->simple_signal = _org_project_signaling_iface_on_signal_simple_signal; 791s # iface->signal_with_many_args = _org_project_signaling_iface_on_signal_signal_with_many_args; 791s # } 791s # 791s # /** 791s # * org_project_signaling_iface_skeleton_new: 791s # * 791s # * Creates a skeleton object for the D-Bus interface org.project.SignalingIface. 791s # * 791s # * Returns: (transfer full) (type OrgProjectSignalingIfaceSkeleton): The skeleton object. 791s # */ 791s # OrgProjectSignalingIface * 791s # org_project_signaling_iface_skeleton_new (void) 791s # { 791s # return ORG_PROJECT_SIGNALING_IFACE (g_object_new (TYPE_ORG_PROJECT_SIGNALING_IFACE_SKELETON, NULL)); 791s # } 791s # Error: 791s ok 25 __main__.TestCodegen.test_generate_valid_docbook 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpjgtix9gw 791s # /tmp/tmpjgtix9gw/tmpl41vu46v.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpjgtix9gw/tmpl41vu46v.xml', '--generate-docbook', 'test'] 791s # Return code: 0 791s # Output: 791s # 791s # Error: 791s ok 26 __main__.TestCodegen.test_glib_max_allowed_less_than_min_required 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmph1msnbz2 791s # /tmp/tmph1msnbz2/tmp3_b55eul.xml: 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmph1msnbz2/tmp3_b55eul.xml', '--output', '-', '--body', '--glib-max-allowed', '2.62', '--glib-min-required', '2.64'] 791s # Return code: 1 791s # Output: 791s # 791s # Error: 791s # ERROR: Invalid versions: --glib-min-required ((2, 64)) must be less than or equal to --glib-max-allowed ((2, 62)) 791s ok 27 __main__.TestCodegen.test_glib_max_allowed_major_only 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpke4yt17t 791s # /tmp/tmpke4yt17t/tmp1n3fpcar.xml: 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpke4yt17t/tmp1n3fpcar.xml', '--output', '-', '--header', '--glib-max-allowed', '3'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s ok 28 __main__.TestCodegen.test_glib_max_allowed_too_low 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpn_6_memf 791s # /tmp/tmpn_6_memf/tmpafn3k4fr.xml: 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpn_6_memf/tmpafn3k4fr.xml', '--output', '-', '--body', '--glib-max-allowed', '2.6'] 791s # Return code: 1 791s # Output: 791s # 791s # Error: 791s # ERROR: Invalid versions: --glib-min-required ((2, 30)) must be less than or equal to --glib-max-allowed ((2, 6)) 791s ok 29 __main__.TestCodegen.test_glib_max_allowed_unstable 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpnx7zf0qh 791s # /tmp/tmpnx7zf0qh/tmpne4m7a3v.xml: 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpnx7zf0qh/tmpne4m7a3v.xml', '--output', '-', '--header', '--glib-max-allowed', '2.63', '--glib-min-required', '2.64'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s ok 30 __main__.TestCodegen.test_glib_max_allowed_with_micro 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmp4k98wjse 791s # /tmp/tmp4k98wjse/tmp0drgmvju.xml: 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp4k98wjse/tmp0drgmvju.xml', '--output', '-', '--header', '--glib-max-allowed', '2.46.2'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s ok 31 __main__.TestCodegen.test_glib_min_required_invalid 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpsx2ck8h_ 791s # /tmp/tmpsx2ck8h_/tmp8mj4o7r3.xml: 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpsx2ck8h_/tmp8mj4o7r3.xml', '--output', '-', '--body', '--glib-min-required', 'hello mum'] 791s # Return code: 1 791s # Output: 791s # 791s # Error: 791s # ERROR: Unrecognized --glib-min-required string ‘hello mum’ 791s ok 32 __main__.TestCodegen.test_glib_min_required_major_only 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpuili909w 791s # /tmp/tmpuili909w/tmpnu5kckqf.xml: 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpuili909w/tmpnu5kckqf.xml', '--output', '-', '--header', '--glib-min-required', '3', '--glib-max-allowed', '3.2'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s ok 33 __main__.TestCodegen.test_glib_min_required_too_low 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpc3bcf_cu 791s # /tmp/tmpc3bcf_cu/tmp9avk72fy.xml: 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpc3bcf_cu/tmp9avk72fy.xml', '--output', '-', '--body', '--glib-min-required', '2.6'] 791s # Return code: 1 791s # Output: 791s # 791s # Error: 791s # ERROR: Invalid --glib-min-required string ‘2.6’: minimum version is 2.30 791s ok 34 __main__.TestCodegen.test_glib_min_required_with_micro 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmp9zd6ko6x 791s # /tmp/tmp9zd6ko6x/tmpztr5_2es.xml: 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmp9zd6ko6x/tmpztr5_2es.xml', '--output', '-', '--header', '--glib-min-required', '2.46.2'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s ok 35 __main__.TestCodegen.test_help 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmp8noogetp 791s # Running: ['/usr/bin/gdbus-codegen', '--help'] 791s # Return code: 0 791s # Output: 791s # usage: gdbus-codegen [-h] [--interface-prefix PREFIX] 791s # [--c-namespace NAMESPACE] [--c-generate-object-manager] 791s # [--c-generate-autocleanup {none,objects,all}] 791s # [--generate-docbook OUTFILES] [--generate-md OUTFILES] 791s # [--generate-rst OUTFILES] [--pragma-once] 791s # [--annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE] 791s # [--glib-min-required VERSION] 791s # [--glib-max-allowed VERSION] 791s # [--symbol-decorator SYMBOL_DECORATOR] 791s # [--symbol-decorator-header SYMBOL_DECORATOR_HEADER] 791s # [--symbol-decorator-define SYMBOL_DECORATOR_DEFINE] 791s # [--generate-c-code OUTFILES | --header | --body | 791s # --interface-info-header | --interface-info-body] 791s # [--output FILE | --output-directory OUTDIR] 791s # FILE [FILE ...] 791s # 791s # D-Bus code and documentation generator 791s # 791s # positional arguments: 791s # FILE D-Bus introspection XML file 791s # 791s # options: 791s # -h, --help show this help message and exit 791s # --interface-prefix PREFIX 791s # String to strip from D-Bus interface names for code 791s # and docs 791s # --c-namespace NAMESPACE 791s # The namespace to use for generated C code 791s # --c-generate-object-manager 791s # Generate a GDBusObjectManagerClient subclass when 791s # generating C code 791s # --c-generate-autocleanup {none,objects,all} 791s # Generate autocleanup support 791s # --generate-docbook OUTFILES 791s # Generate Docbook in OUTFILES-org.Project.IFace.xml 791s # --generate-md OUTFILES 791s # Generate Markdown in OUTFILES-org.Project.IFace.md 791s # --generate-rst OUTFILES 791s # Generate reStructuredText in OUTFILES- 791s # org.Project.IFace.rst 791s # --pragma-once Use "pragma once" as the inclusion guard 791s # --annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE 791s # Add annotation (may be used several times) 791s # --glib-min-required VERSION 791s # Minimum version of GLib to be supported by the 791s # outputted code (default: 2.30) 791s # --glib-max-allowed VERSION 791s # Maximum version of GLib to be used by the outputted 791s # code (default: current GLib version) 791s # --symbol-decorator SYMBOL_DECORATOR 791s # Macro used to decorate a symbol in the outputted 791s # header, possibly to export symbols 791s # --symbol-decorator-header SYMBOL_DECORATOR_HEADER 791s # Additional header required for decorator specified by 791s # --symbol-decorator 791s # --symbol-decorator-define SYMBOL_DECORATOR_DEFINE 791s # Additional define required for decorator specified by 791s # --symbol-decorator 791s # --generate-c-code OUTFILES 791s # Generate C code in OUTFILES.[ch] 791s # --header Generate C headers 791s # --body Generate C code 791s # --interface-info-header 791s # Generate GDBusInterfaceInfo C header 791s # --interface-info-body 791s # Generate GDBusInterfaceInfo C code 791s # --output FILE Write output into the specified file 791s # --output-directory OUTDIR 791s # Location to output generated files 791s # Error: 791s ok 36 __main__.TestCodegen.test_indentation_preservation_in_comments 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpp0f5ap0t 791s # /tmp/tmpp0f5ap0t/tmpd0a5rqgk.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpp0f5ap0t/tmpd0a5rqgk.xml', '--generate-rst', 'test'] 791s # Return code: 0 791s # Output: 791s # 791s # Error: 791s # 791s # /tmp/tmpp0f5ap0t/tmpa1dmc_ib.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpp0f5ap0t/tmpa1dmc_ib.xml', '--generate-md', 'test'] 791s # Return code: 0 791s # Output: 791s # 791s # Error: 791s # 791s # /tmp/tmpp0f5ap0t/tmp2e9y62iw.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpp0f5ap0t/tmp2e9y62iw.xml', '--generate-docbook', 'test'] 791s # Return code: 0 791s # Output: 791s # 791s # Error: 791s ok 37 __main__.TestCodegen.test_no_args 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmp9orjf_uc 791s # Running: ['/usr/bin/gdbus-codegen'] 791s # Return code: 2 791s # Output: 791s # 791s # Error: 791s # usage: gdbus-codegen [-h] [--interface-prefix PREFIX] 791s # [--c-namespace NAMESPACE] [--c-generate-object-manager] 791s # [--c-generate-autocleanup {none,objects,all}] 791s # [--generate-docbook OUTFILES] [--generate-md OUTFILES] 791s # [--generate-rst OUTFILES] [--pragma-once] 791s # [--annotate WHAT KEY VALUE WHAT KEY VALUE WHAT KEY VALUE] 791s # [--glib-min-required VERSION] 791s # [--glib-max-allowed VERSION] 791s # [--symbol-decorator SYMBOL_DECORATOR] 791s # [--symbol-decorator-header SYMBOL_DECORATOR_HEADER] 791s # [--symbol-decorator-define SYMBOL_DECORATOR_DEFINE] 791s # [--generate-c-code OUTFILES | --header | --body | 791s # --interface-info-header | --interface-info-body] 791s # [--output FILE | --output-directory OUTDIR] 791s # FILE [FILE ...] 791s # gdbus-codegen: error: the following arguments are required: FILE 791s ok 38 __main__.TestCodegen.test_reproducible 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpepyhlnz9 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepyhlnz9/tmpx7482tp51.xml', '/tmp/tmpepyhlnz9/tmpowjn9j1u2.xml', '--output', '-', '--header'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # /* Declarations for org.project.Bar.Frobnicator */ 791s # 791s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR (org_project_bar_frobnicator_get_type ()) 791s # #define ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicator)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicatorIface)) 791s # 791s # struct _OrgProjectBarFrobnicator; 791s # typedef struct _OrgProjectBarFrobnicator OrgProjectBarFrobnicator; 791s # typedef struct _OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorIface; 791s # 791s # struct _OrgProjectBarFrobnicatorIface 791s # { 791s # GTypeInterface parent_iface; 791s # 791s # gboolean (*handle_random_method) ( 791s # OrgProjectBarFrobnicator *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # }; 791s # 791s # GType org_project_bar_frobnicator_get_type (void) G_GNUC_CONST; 791s # 791s # GDBusInterfaceInfo *org_project_bar_frobnicator_interface_info (void); 791s # guint org_project_bar_frobnicator_override_properties (GObjectClass *klass, guint property_id_begin); 791s # 791s # 791s # /* D-Bus method call completion functions: */ 791s # void org_project_bar_frobnicator_complete_random_method ( 791s # OrgProjectBarFrobnicator *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # 791s # 791s # /* D-Bus method calls: */ 791s # void org_project_bar_frobnicator_call_random_method ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean org_project_bar_frobnicator_call_random_method_finish ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean org_project_bar_frobnicator_call_random_method_sync ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY (org_project_bar_frobnicator_proxy_get_type ()) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxy)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY)) 791s # 791s # typedef struct _OrgProjectBarFrobnicatorProxy OrgProjectBarFrobnicatorProxy; 791s # typedef struct _OrgProjectBarFrobnicatorProxyClass OrgProjectBarFrobnicatorProxyClass; 791s # typedef struct _OrgProjectBarFrobnicatorProxyPrivate OrgProjectBarFrobnicatorProxyPrivate; 791s # 791s # struct _OrgProjectBarFrobnicatorProxy 791s # { 791s # /*< private >*/ 791s # GDBusProxy parent_instance; 791s # OrgProjectBarFrobnicatorProxyPrivate *priv; 791s # }; 791s # 791s # struct _OrgProjectBarFrobnicatorProxyClass 791s # { 791s # GDBusProxyClass parent_class; 791s # }; 791s # 791s # GType org_project_bar_frobnicator_proxy_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorProxy, g_object_unref) 791s # #endif 791s # 791s # void org_project_bar_frobnicator_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void org_project_bar_frobnicator_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON (org_project_bar_frobnicator_skeleton_get_type ()) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeleton)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON)) 791s # 791s # typedef struct _OrgProjectBarFrobnicatorSkeleton OrgProjectBarFrobnicatorSkeleton; 791s # typedef struct _OrgProjectBarFrobnicatorSkeletonClass OrgProjectBarFrobnicatorSkeletonClass; 791s # typedef struct _OrgProjectBarFrobnicatorSkeletonPrivate OrgProjectBarFrobnicatorSkeletonPrivate; 791s # 791s # struct _OrgProjectBarFrobnicatorSkeleton 791s # { 791s # /*< private >*/ 791s # GDBusInterfaceSkeleton parent_instance; 791s # OrgProjectBarFrobnicatorSkeletonPrivate *priv; 791s # }; 791s # 791s # struct _OrgProjectBarFrobnicatorSkeletonClass 791s # { 791s # GDBusInterfaceSkeletonClass parent_class; 791s # }; 791s # 791s # GType org_project_bar_frobnicator_skeleton_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorSkeleton, g_object_unref) 791s # #endif 791s # 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_skeleton_new (void); 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # /* Declarations for com.acme.Coyote */ 791s # 791s # #define TYPE_COM_ACME_COYOTE (com_acme_coyote_get_type ()) 791s # #define COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyote)) 791s # #define IS_COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE)) 791s # #define COM_ACME_COYOTE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyoteIface)) 791s # 791s # struct _ComAcmeCoyote; 791s # typedef struct _ComAcmeCoyote ComAcmeCoyote; 791s # typedef struct _ComAcmeCoyoteIface ComAcmeCoyoteIface; 791s # 791s # struct _ComAcmeCoyoteIface 791s # { 791s # GTypeInterface parent_iface; 791s # 791s # 791s # 791s # gboolean (*handle_attack) ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # gboolean (*handle_run) ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # gboolean (*handle_sleep) ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # const gchar * (*get_mood) (ComAcmeCoyote *object); 791s # 791s # void (*surprised) ( 791s # ComAcmeCoyote *object); 791s # 791s # }; 791s # 791s # GType com_acme_coyote_get_type (void) G_GNUC_CONST; 791s # 791s # GDBusInterfaceInfo *com_acme_coyote_interface_info (void); 791s # guint com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin); 791s # 791s # 791s # /* D-Bus method call completion functions: */ 791s # void com_acme_coyote_complete_run ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # void com_acme_coyote_complete_sleep ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # void com_acme_coyote_complete_attack ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # 791s # 791s # /* D-Bus signal emissions functions: */ 791s # void com_acme_coyote_emit_surprised ( 791s # ComAcmeCoyote *object); 791s # 791s # 791s # 791s # /* D-Bus method calls: */ 791s # void com_acme_coyote_call_run ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean com_acme_coyote_call_run_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean com_acme_coyote_call_run_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void com_acme_coyote_call_sleep ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean com_acme_coyote_call_sleep_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean com_acme_coyote_call_sleep_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void com_acme_coyote_call_attack ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean com_acme_coyote_call_attack_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean com_acme_coyote_call_attack_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # 791s # /* D-Bus property accessors: */ 791s # const gchar *com_acme_coyote_get_mood (ComAcmeCoyote *object); 791s # gchar *com_acme_coyote_dup_mood (ComAcmeCoyote *object); 791s # void com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value); 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_COM_ACME_COYOTE_PROXY (com_acme_coyote_proxy_get_type ()) 791s # #define COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxy)) 791s # #define COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass)) 791s # #define COM_ACME_COYOTE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass)) 791s # #define IS_COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_PROXY)) 791s # #define IS_COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_PROXY)) 791s # 791s # typedef struct _ComAcmeCoyoteProxy ComAcmeCoyoteProxy; 791s # typedef struct _ComAcmeCoyoteProxyClass ComAcmeCoyoteProxyClass; 791s # typedef struct _ComAcmeCoyoteProxyPrivate ComAcmeCoyoteProxyPrivate; 791s # 791s # struct _ComAcmeCoyoteProxy 791s # { 791s # /*< private >*/ 791s # GDBusProxy parent_instance; 791s # ComAcmeCoyoteProxyPrivate *priv; 791s # }; 791s # 791s # struct _ComAcmeCoyoteProxyClass 791s # { 791s # GDBusProxyClass parent_class; 791s # }; 791s # 791s # GType com_acme_coyote_proxy_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteProxy, g_object_unref) 791s # #endif 791s # 791s # void com_acme_coyote_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # ComAcmeCoyote *com_acme_coyote_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # ComAcmeCoyote *com_acme_coyote_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void com_acme_coyote_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_COM_ACME_COYOTE_SKELETON (com_acme_coyote_skeleton_get_type ()) 791s # #define COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeleton)) 791s # #define COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass)) 791s # #define COM_ACME_COYOTE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass)) 791s # #define IS_COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_SKELETON)) 791s # #define IS_COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_SKELETON)) 791s # 791s # typedef struct _ComAcmeCoyoteSkeleton ComAcmeCoyoteSkeleton; 791s # typedef struct _ComAcmeCoyoteSkeletonClass ComAcmeCoyoteSkeletonClass; 791s # typedef struct _ComAcmeCoyoteSkeletonPrivate ComAcmeCoyoteSkeletonPrivate; 791s # 791s # struct _ComAcmeCoyoteSkeleton 791s # { 791s # /*< private >*/ 791s # GDBusInterfaceSkeleton parent_instance; 791s # ComAcmeCoyoteSkeletonPrivate *priv; 791s # }; 791s # 791s # struct _ComAcmeCoyoteSkeletonClass 791s # { 791s # GDBusInterfaceSkeletonClass parent_class; 791s # }; 791s # 791s # GType com_acme_coyote_skeleton_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteSkeleton, g_object_unref) 791s # #endif 791s # 791s # ComAcmeCoyote *com_acme_coyote_skeleton_new (void); 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepyhlnz9/tmpowjn9j1u2.xml', '/tmp/tmpepyhlnz9/tmpx7482tp51.xml', '--output', '-', '--header'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # /* Declarations for org.project.Bar.Frobnicator */ 791s # 791s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR (org_project_bar_frobnicator_get_type ()) 791s # #define ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicator)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR, OrgProjectBarFrobnicatorIface)) 791s # 791s # struct _OrgProjectBarFrobnicator; 791s # typedef struct _OrgProjectBarFrobnicator OrgProjectBarFrobnicator; 791s # typedef struct _OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorIface; 791s # 791s # struct _OrgProjectBarFrobnicatorIface 791s # { 791s # GTypeInterface parent_iface; 791s # 791s # gboolean (*handle_random_method) ( 791s # OrgProjectBarFrobnicator *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # }; 791s # 791s # GType org_project_bar_frobnicator_get_type (void) G_GNUC_CONST; 791s # 791s # GDBusInterfaceInfo *org_project_bar_frobnicator_interface_info (void); 791s # guint org_project_bar_frobnicator_override_properties (GObjectClass *klass, guint property_id_begin); 791s # 791s # 791s # /* D-Bus method call completion functions: */ 791s # void org_project_bar_frobnicator_complete_random_method ( 791s # OrgProjectBarFrobnicator *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # 791s # 791s # /* D-Bus method calls: */ 791s # void org_project_bar_frobnicator_call_random_method ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean org_project_bar_frobnicator_call_random_method_finish ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean org_project_bar_frobnicator_call_random_method_sync ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY (org_project_bar_frobnicator_proxy_get_type ()) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxy)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyClass)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY)) 791s # 791s # typedef struct _OrgProjectBarFrobnicatorProxy OrgProjectBarFrobnicatorProxy; 791s # typedef struct _OrgProjectBarFrobnicatorProxyClass OrgProjectBarFrobnicatorProxyClass; 791s # typedef struct _OrgProjectBarFrobnicatorProxyPrivate OrgProjectBarFrobnicatorProxyPrivate; 791s # 791s # struct _OrgProjectBarFrobnicatorProxy 791s # { 791s # /*< private >*/ 791s # GDBusProxy parent_instance; 791s # OrgProjectBarFrobnicatorProxyPrivate *priv; 791s # }; 791s # 791s # struct _OrgProjectBarFrobnicatorProxyClass 791s # { 791s # GDBusProxyClass parent_class; 791s # }; 791s # 791s # GType org_project_bar_frobnicator_proxy_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorProxy, g_object_unref) 791s # #endif 791s # 791s # void org_project_bar_frobnicator_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void org_project_bar_frobnicator_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON (org_project_bar_frobnicator_skeleton_get_type ()) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeleton)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass)) 791s # #define ORG_PROJECT_BAR_FROBNICATOR_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonClass)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON)) 791s # #define IS_ORG_PROJECT_BAR_FROBNICATOR_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON)) 791s # 791s # typedef struct _OrgProjectBarFrobnicatorSkeleton OrgProjectBarFrobnicatorSkeleton; 791s # typedef struct _OrgProjectBarFrobnicatorSkeletonClass OrgProjectBarFrobnicatorSkeletonClass; 791s # typedef struct _OrgProjectBarFrobnicatorSkeletonPrivate OrgProjectBarFrobnicatorSkeletonPrivate; 791s # 791s # struct _OrgProjectBarFrobnicatorSkeleton 791s # { 791s # /*< private >*/ 791s # GDBusInterfaceSkeleton parent_instance; 791s # OrgProjectBarFrobnicatorSkeletonPrivate *priv; 791s # }; 791s # 791s # struct _OrgProjectBarFrobnicatorSkeletonClass 791s # { 791s # GDBusInterfaceSkeletonClass parent_class; 791s # }; 791s # 791s # GType org_project_bar_frobnicator_skeleton_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (OrgProjectBarFrobnicatorSkeleton, g_object_unref) 791s # #endif 791s # 791s # OrgProjectBarFrobnicator *org_project_bar_frobnicator_skeleton_new (void); 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # /* Declarations for com.acme.Coyote */ 791s # 791s # #define TYPE_COM_ACME_COYOTE (com_acme_coyote_get_type ()) 791s # #define COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyote)) 791s # #define IS_COM_ACME_COYOTE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE)) 791s # #define COM_ACME_COYOTE_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_COM_ACME_COYOTE, ComAcmeCoyoteIface)) 791s # 791s # struct _ComAcmeCoyote; 791s # typedef struct _ComAcmeCoyote ComAcmeCoyote; 791s # typedef struct _ComAcmeCoyoteIface ComAcmeCoyoteIface; 791s # 791s # struct _ComAcmeCoyoteIface 791s # { 791s # GTypeInterface parent_iface; 791s # 791s # 791s # 791s # gboolean (*handle_attack) ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # gboolean (*handle_run) ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # gboolean (*handle_sleep) ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # const gchar * (*get_mood) (ComAcmeCoyote *object); 791s # 791s # void (*surprised) ( 791s # ComAcmeCoyote *object); 791s # 791s # }; 791s # 791s # GType com_acme_coyote_get_type (void) G_GNUC_CONST; 791s # 791s # GDBusInterfaceInfo *com_acme_coyote_interface_info (void); 791s # guint com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin); 791s # 791s # 791s # /* D-Bus method call completion functions: */ 791s # void com_acme_coyote_complete_run ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # void com_acme_coyote_complete_sleep ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # void com_acme_coyote_complete_attack ( 791s # ComAcmeCoyote *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # 791s # 791s # /* D-Bus signal emissions functions: */ 791s # void com_acme_coyote_emit_surprised ( 791s # ComAcmeCoyote *object); 791s # 791s # 791s # 791s # /* D-Bus method calls: */ 791s # void com_acme_coyote_call_run ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean com_acme_coyote_call_run_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean com_acme_coyote_call_run_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void com_acme_coyote_call_sleep ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean com_acme_coyote_call_sleep_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean com_acme_coyote_call_sleep_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void com_acme_coyote_call_attack ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean com_acme_coyote_call_attack_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean com_acme_coyote_call_attack_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # 791s # /* D-Bus property accessors: */ 791s # const gchar *com_acme_coyote_get_mood (ComAcmeCoyote *object); 791s # gchar *com_acme_coyote_dup_mood (ComAcmeCoyote *object); 791s # void com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value); 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_COM_ACME_COYOTE_PROXY (com_acme_coyote_proxy_get_type ()) 791s # #define COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxy)) 791s # #define COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass)) 791s # #define COM_ACME_COYOTE_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyClass)) 791s # #define IS_COM_ACME_COYOTE_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_PROXY)) 791s # #define IS_COM_ACME_COYOTE_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_PROXY)) 791s # 791s # typedef struct _ComAcmeCoyoteProxy ComAcmeCoyoteProxy; 791s # typedef struct _ComAcmeCoyoteProxyClass ComAcmeCoyoteProxyClass; 791s # typedef struct _ComAcmeCoyoteProxyPrivate ComAcmeCoyoteProxyPrivate; 791s # 791s # struct _ComAcmeCoyoteProxy 791s # { 791s # /*< private >*/ 791s # GDBusProxy parent_instance; 791s # ComAcmeCoyoteProxyPrivate *priv; 791s # }; 791s # 791s # struct _ComAcmeCoyoteProxyClass 791s # { 791s # GDBusProxyClass parent_class; 791s # }; 791s # 791s # GType com_acme_coyote_proxy_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteProxy, g_object_unref) 791s # #endif 791s # 791s # void com_acme_coyote_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # ComAcmeCoyote *com_acme_coyote_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # ComAcmeCoyote *com_acme_coyote_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void com_acme_coyote_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # ComAcmeCoyote *com_acme_coyote_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_COM_ACME_COYOTE_SKELETON (com_acme_coyote_skeleton_get_type ()) 791s # #define COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeleton)) 791s # #define COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass)) 791s # #define COM_ACME_COYOTE_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonClass)) 791s # #define IS_COM_ACME_COYOTE_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_COM_ACME_COYOTE_SKELETON)) 791s # #define IS_COM_ACME_COYOTE_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_COM_ACME_COYOTE_SKELETON)) 791s # 791s # typedef struct _ComAcmeCoyoteSkeleton ComAcmeCoyoteSkeleton; 791s # typedef struct _ComAcmeCoyoteSkeletonClass ComAcmeCoyoteSkeletonClass; 791s # typedef struct _ComAcmeCoyoteSkeletonPrivate ComAcmeCoyoteSkeletonPrivate; 791s # 791s # struct _ComAcmeCoyoteSkeleton 791s # { 791s # /*< private >*/ 791s # GDBusInterfaceSkeleton parent_instance; 791s # ComAcmeCoyoteSkeletonPrivate *priv; 791s # }; 791s # 791s # struct _ComAcmeCoyoteSkeletonClass 791s # { 791s # GDBusInterfaceSkeletonClass parent_class; 791s # }; 791s # 791s # GType com_acme_coyote_skeleton_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (ComAcmeCoyoteSkeleton, g_object_unref) 791s # #endif 791s # 791s # ComAcmeCoyote *com_acme_coyote_skeleton_new (void); 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepyhlnz9/tmpx7482tp51.xml', '/tmp/tmpepyhlnz9/tmpowjn9j1u2.xml', '--output', '-', '--body'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifdef HAVE_CONFIG_H 791s # # include "config.h" 791s # #endif 791s # 791s # #include 791s # #ifdef G_OS_UNIX 791s # # include 791s # #endif 791s # 791s # #ifdef G_ENABLE_DEBUG 791s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 791s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 791s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 791s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 791s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 791s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 791s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 791s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 791s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 791s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 791s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 791s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 791s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 791s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 791s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 791s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 791s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 791s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 791s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 791s # #else /* !G_ENABLE_DEBUG */ 791s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 791s # * Do not access GValues directly in your code. Instead, use the 791s # * g_value_get_*() functions 791s # */ 791s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 791s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 791s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 791s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 791s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 791s # #endif /* !G_ENABLE_DEBUG */ 791s # 791s # typedef struct 791s # { 791s # GDBusArgInfo parent_struct; 791s # gboolean use_gvariant; 791s # } _ExtendedGDBusArgInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusMethodInfo parent_struct; 791s # const gchar *signal_name; 791s # gboolean pass_fdlist; 791s # } _ExtendedGDBusMethodInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusSignalInfo parent_struct; 791s # const gchar *signal_name; 791s # } _ExtendedGDBusSignalInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusPropertyInfo parent_struct; 791s # const gchar *hyphen_name; 791s # guint use_gvariant : 1; 791s # guint emits_changed_signal : 1; 791s # } _ExtendedGDBusPropertyInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusInterfaceInfo parent_struct; 791s # const gchar *hyphen_name; 791s # } _ExtendedGDBusInterfaceInfo; 791s # 791s # typedef struct 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # guint prop_id; 791s # GValue orig_value; /* the value before the change */ 791s # } ChangedProperty; 791s # 791s # static void 791s # _changed_property_free (ChangedProperty *data) 791s # { 791s # g_value_unset (&data->orig_value); 791s # g_free (data); 791s # } 791s # 791s # static gboolean 791s # _g_strv_equal0 (gchar **a, gchar **b) 791s # { 791s # gboolean ret = FALSE; 791s # guint n; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # if (g_strv_length (a) != g_strv_length (b)) 791s # goto out; 791s # for (n = 0; a[n] != NULL; n++) 791s # if (g_strcmp0 (a[n], b[n]) != 0) 791s # goto out; 791s # ret = TRUE; 791s # out: 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _g_variant_equal0 (GVariant *a, GVariant *b) 791s # { 791s # gboolean ret = FALSE; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # ret = g_variant_equal (a, b); 791s # out: 791s # return ret; 791s # } 791s # 791s # G_GNUC_UNUSED static gboolean 791s # _g_value_equal (const GValue *a, const GValue *b) 791s # { 791s # gboolean ret = FALSE; 791s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 791s # switch (G_VALUE_TYPE (a)) 791s # { 791s # case G_TYPE_BOOLEAN: 791s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 791s # break; 791s # case G_TYPE_UCHAR: 791s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 791s # break; 791s # case G_TYPE_INT: 791s # ret = (g_value_get_int (a) == g_value_get_int (b)); 791s # break; 791s # case G_TYPE_UINT: 791s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 791s # break; 791s # case G_TYPE_INT64: 791s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 791s # break; 791s # case G_TYPE_UINT64: 791s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 791s # break; 791s # case G_TYPE_DOUBLE: 791s # { 791s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 791s # gdouble da = g_value_get_double (a); 791s # gdouble db = g_value_get_double (b); 791s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 791s # } 791s # break; 791s # case G_TYPE_STRING: 791s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 791s # break; 791s # case G_TYPE_VARIANT: 791s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 791s # break; 791s # default: 791s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 791s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 791s # else 791s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 791s # break; 791s # } 791s # return ret; 791s # } 791s # 791s # static void 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint G_GNUC_UNUSED, 791s # void *marshal_data) 791s # { 791s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 791s # (void *data1, 791s # GDBusMethodInvocation *arg_method_invocation, 791s # void *data2); 791s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 791s # GCClosure *cc = (GCClosure*) closure; 791s # void *data1, *data2; 791s # gboolean v_return; 791s # 791s # g_return_if_fail (return_value != NULL); 791s # g_return_if_fail (n_param_values == 2); 791s # 791s # if (G_CCLOSURE_SWAP_DATA (closure)) 791s # { 791s # data1 = closure->data; 791s # data2 = g_value_peek_pointer (param_values + 0); 791s # } 791s # else 791s # { 791s # data1 = g_value_peek_pointer (param_values + 0); 791s # data2 = closure->data; 791s # } 791s # 791s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 791s # (marshal_data ? marshal_data : cc->callback); 791s # 791s # v_return = 791s # callback (data1, 791s # g_marshal_value_peek_object (param_values + 1), 791s # data2); 791s # 791s # g_value_set_boolean (return_value, v_return); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ 791s # * Code for interface org.project.Bar.Frobnicator 791s # * ------------------------------------------------------------------------ 791s # */ 791s # 791s # /** 791s # * SECTION:OrgProjectBarFrobnicator 791s # * @title: OrgProjectBarFrobnicator 791s # * @short_description: Generated C code for the org.project.Bar.Frobnicator D-Bus interface 791s # * 791s # * This section contains code for working with the org.project.Bar.Frobnicator D-Bus interface in C. 791s # */ 791s # 791s # /* ---- Introspection data for org.project.Bar.Frobnicator ---- */ 791s # 791s # static const _ExtendedGDBusMethodInfo _org_project_bar_frobnicator_method_info_random_method = 791s # { 791s # { 791s # -1, 791s # (gchar *) "RandomMethod", 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "handle-random-method", 791s # FALSE 791s # }; 791s # 791s # static const GDBusMethodInfo * const _org_project_bar_frobnicator_method_info_pointers[] = 791s # { 791s # &_org_project_bar_frobnicator_method_info_random_method.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusInterfaceInfo _org_project_bar_frobnicator_interface_info = 791s # { 791s # { 791s # -1, 791s # (gchar *) "org.project.Bar.Frobnicator", 791s # (GDBusMethodInfo **) &_org_project_bar_frobnicator_method_info_pointers, 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "org-project-bar-frobnicator", 791s # }; 791s # 791s # 791s # /** 791s # * org_project_bar_frobnicator_interface_info: 791s # * 791s # * Gets a machine-readable description of the org.project.Bar.Frobnicator D-Bus interface. 791s # * 791s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 791s # */ 791s # GDBusInterfaceInfo * 791s # org_project_bar_frobnicator_interface_info (void) 791s # { 791s # return (GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_override_properties: 791s # * @klass: The class structure for a #GObject derived class. 791s # * @property_id_begin: The property id to assign to the first overridden property. 791s # * 791s # * Overrides all #GObject properties in the #OrgProjectBarFrobnicator interface for a concrete class. 791s # * The properties are overridden in the order they are defined. 791s # * 791s # * Returns: The last property id. 791s # */ 791s # guint 791s # org_project_bar_frobnicator_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 791s # { 791s # return property_id_begin - 1; 791s # } 791s # 791s # 791s # inline static void 791s # org_project_bar_frobnicator_method_marshal_random_method ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # 791s # /** 791s # * OrgProjectBarFrobnicator: 791s # * 791s # * Abstract interface type for the D-Bus interface org.project.Bar.Frobnicator. 791s # */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorIface: 791s # * @parent_iface: The parent interface. 791s # * @handle_random_method: Handler for the #OrgProjectBarFrobnicator::handle-random-method signal. 791s # * 791s # * Virtual table for the D-Bus interface org.project.Bar.Frobnicator. 791s # */ 791s # 791s # typedef OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorInterface; 791s # G_DEFINE_INTERFACE (OrgProjectBarFrobnicator, org_project_bar_frobnicator, G_TYPE_OBJECT) 791s # 791s # static void 791s # org_project_bar_frobnicator_default_init (OrgProjectBarFrobnicatorIface *iface) 791s # { 791s # /* GObject signals for incoming D-Bus method calls: */ 791s # /** 791s # * OrgProjectBarFrobnicator::handle-random-method: 791s # * @object: A #OrgProjectBarFrobnicator. 791s # * @invocation: A #GDBusMethodInvocation. 791s # * 791s # * Signal emitted when a remote caller is invoking the RandomMethod() D-Bus method. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # g_signal_new ("handle-random-method", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectBarFrobnicatorIface, handle_random_method), 791s # g_signal_accumulator_true_handled, 791s # NULL, 791s # org_project_bar_frobnicator_method_marshal_random_method, 791s # G_TYPE_BOOLEAN, 791s # 1, 791s # G_TYPE_DBUS_METHOD_INVOCATION); 791s # 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_call_random_method: 791s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously invokes the RandomMethod() D-Bus method on @proxy. 791s # * 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()). 791s # * You can then call org_project_bar_frobnicator_call_random_method_finish() to get the result of the operation. 791s # * 791s # * See org_project_bar_frobnicator_call_random_method_sync() for the synchronous, blocking version of this method. 791s # */ 791s # void 791s # org_project_bar_frobnicator_call_random_method ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 791s # "RandomMethod", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # callback, 791s # user_data); 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_call_random_method_finish: 791s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_call_random_method(). 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Finishes an operation started with org_project_bar_frobnicator_call_random_method(). 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # org_project_bar_frobnicator_call_random_method_finish ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_call_random_method_sync: 791s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Synchronously invokes the RandomMethod() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_bar_frobnicator_call_random_method() for the asynchronous version of this method. 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # org_project_bar_frobnicator_call_random_method_sync ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 791s # "RandomMethod", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_complete_random_method: 791s # * @object: A #OrgProjectBarFrobnicator. 791s # * @invocation: (transfer full): A #GDBusMethodInvocation. 791s # * 791s # * 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. 791s # * 791s # * This method will free @invocation, you cannot use it afterwards. 791s # */ 791s # void 791s # org_project_bar_frobnicator_complete_random_method ( 791s # OrgProjectBarFrobnicator *object G_GNUC_UNUSED, 791s # GDBusMethodInvocation *invocation) 791s # { 791s # g_dbus_method_invocation_return_value (invocation, 791s # g_variant_new ("()")); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorProxy: 791s # * 791s # * The #OrgProjectBarFrobnicatorProxy structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorProxyClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectBarFrobnicatorProxy. 791s # */ 791s # 791s # struct _OrgProjectBarFrobnicatorProxyPrivate 791s # { 791s # GData *qdata; 791s # }; 791s # 791s # static void org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY, 791s # G_ADD_PRIVATE (OrgProjectBarFrobnicatorProxy) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_bar_frobnicator_proxy_finalize (GObject *object) 791s # { 791s # OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (object); 791s # g_datalist_clear (&proxy->priv->qdata); 791s # G_OBJECT_CLASS (org_project_bar_frobnicator_proxy_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_get_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_set_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # const GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_g_signal (GDBusProxy *proxy, 791s # const gchar *sender_name G_GNUC_UNUSED, 791s # const gchar *signal_name, 791s # GVariant *parameters) 791s # { 791s # _ExtendedGDBusSignalInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # gsize n; 791s # guint signal_id; 791s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, signal_name); 791s # if (info == NULL) 791s # return; 791s # num_params = g_variant_n_children (parameters); 791s # paramv = g_new0 (GValue, num_params + 1); 791s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_BAR_FROBNICATOR); 791s # g_value_set_object (¶mv[0], proxy); 791s # g_variant_iter_init (&iter, parameters); 791s # n = 1; 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR); 791s # g_signal_emitv (paramv, signal_id, 0, NULL); 791s # for (n = 0; n < num_params + 1; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_g_properties_changed (GDBusProxy *_proxy, 791s # GVariant *changed_properties, 791s # const gchar *const *invalidated_properties) 791s # { 791s # OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (_proxy); 791s # guint n; 791s # const gchar *key; 791s # GVariantIter *iter; 791s # _ExtendedGDBusPropertyInfo *info; 791s # g_variant_get (changed_properties, "a{sv}", &iter); 791s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, key); 791s # g_datalist_remove_data (&proxy->priv->qdata, key); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # g_variant_iter_free (iter); 791s # for (n = 0; invalidated_properties[n] != NULL; n++) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, invalidated_properties[n]); 791s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_init (OrgProjectBarFrobnicatorProxy *proxy) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # proxy->priv = org_project_bar_frobnicator_proxy_get_instance_private (proxy); 791s # #else 791s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyPrivate); 791s # #endif 791s # 791s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_bar_frobnicator_interface_info ()); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_class_init (OrgProjectBarFrobnicatorProxyClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusProxyClass *proxy_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_bar_frobnicator_proxy_finalize; 791s # gobject_class->get_property = org_project_bar_frobnicator_proxy_get_property; 791s # gobject_class->set_property = org_project_bar_frobnicator_proxy_set_property; 791s # 791s # proxy_class = G_DBUS_PROXY_CLASS (klass); 791s # proxy_class->g_signal = org_project_bar_frobnicator_proxy_g_signal; 791s # proxy_class->g_properties_changed = org_project_bar_frobnicator_proxy_g_properties_changed; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorProxyPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously creates a proxy for the D-Bus interface org.project.Bar.Frobnicator. See g_dbus_proxy_new() for more details. 791s # * 791s # * 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()). 791s # * You can then call org_project_bar_frobnicator_proxy_new_finish() to get the result of the operation. 791s # * 791s # * See org_project_bar_frobnicator_proxy_new_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_bar_frobnicator_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_bar_frobnicator_proxy_new(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_sync: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Synchronously creates a proxy for the D-Bus interface org.project.Bar.Frobnicator. See g_dbus_proxy_new_sync() for more details. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_bar_frobnicator_proxy_new() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_for_bus: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Like org_project_bar_frobnicator_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * 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()). 791s # * You can then call org_project_bar_frobnicator_proxy_new_for_bus_finish() to get the result of the operation. 791s # * 791s # * See org_project_bar_frobnicator_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_bar_frobnicator_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_for_bus_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new_for_bus(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_bar_frobnicator_proxy_new_for_bus(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_for_bus_sync: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Like org_project_bar_frobnicator_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_bar_frobnicator_proxy_new_for_bus() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorSkeleton: 791s # * 791s # * The #OrgProjectBarFrobnicatorSkeleton structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorSkeletonClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectBarFrobnicatorSkeleton. 791s # */ 791s # 791s # struct _OrgProjectBarFrobnicatorSkeletonPrivate 791s # { 791s # GValue *properties; 791s # GList *changed_properties; 791s # GSource *changed_properties_idle_source; 791s # GMainContext *context; 791s # GMutex lock; 791s # }; 791s # 791s # static void 791s # _org_project_bar_frobnicator_skeleton_handle_method_call ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name, 791s # const gchar *method_name, 791s # GVariant *parameters, 791s # GDBusMethodInvocation *invocation, 791s # gpointer user_data) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 791s # _ExtendedGDBusMethodInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # guint num_extra; 791s # gsize n; 791s # guint signal_id; 791s # GValue return_value = G_VALUE_INIT; 791s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 791s # g_assert (info != NULL); 791s # num_params = g_variant_n_children (parameters); 791s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 791s # n = 0; 791s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_BAR_FROBNICATOR); 791s # g_value_set_object (¶mv[n++], skeleton); 791s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 791s # g_value_set_object (¶mv[n++], invocation); 791s # if (info->pass_fdlist) 791s # { 791s # #ifdef G_OS_UNIX 791s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 791s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 791s # #else 791s # g_assert_not_reached (); 791s # #endif 791s # } 791s # g_variant_iter_init (&iter, parameters); 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR); 791s # g_value_init (&return_value, G_TYPE_BOOLEAN); 791s # g_signal_emitv (paramv, signal_id, 0, &return_value); 791s # if (!g_value_get_boolean (&return_value)) 791s # 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); 791s # g_value_unset (&return_value); 791s # for (n = 0; n < num_params + num_extra; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static GVariant * 791s # _org_project_bar_frobnicator_skeleton_handle_get_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # GVariant *ret; 791s # ret = NULL; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # g_value_init (&value, pspec->value_type); 791s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_value_unset (&value); 791s # } 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _org_project_bar_frobnicator_skeleton_handle_set_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GVariant *variant, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # gboolean ret; 791s # ret = FALSE; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # if (info->use_gvariant) 791s # g_value_set_variant (&value, variant); 791s # else 791s # g_dbus_gvariant_to_gvalue (variant, &value); 791s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # g_value_unset (&value); 791s # ret = TRUE; 791s # } 791s # return ret; 791s # } 791s # 791s # static const GDBusInterfaceVTable _org_project_bar_frobnicator_skeleton_vtable = 791s # { 791s # _org_project_bar_frobnicator_skeleton_handle_method_call, 791s # _org_project_bar_frobnicator_skeleton_handle_get_property, 791s # _org_project_bar_frobnicator_skeleton_handle_set_property, 791s # {NULL} 791s # }; 791s # 791s # static GDBusInterfaceInfo * 791s # org_project_bar_frobnicator_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return org_project_bar_frobnicator_interface_info (); 791s # } 791s # 791s # static GDBusInterfaceVTable * 791s # org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return (GDBusInterfaceVTable *) &_org_project_bar_frobnicator_skeleton_vtable; 791s # } 791s # 791s # static GVariant * 791s # org_project_bar_frobnicator_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (_skeleton); 791s # 791s # GVariantBuilder builder; 791s # guint n; 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #else 791s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #endif 791s # if (_org_project_bar_frobnicator_interface_info.parent_struct.properties == NULL) 791s # goto out; 791s # for (n = 0; _org_project_bar_frobnicator_interface_info.parent_struct.properties[n] != NULL; n++) 791s # { 791s # GDBusPropertyInfo *info = _org_project_bar_frobnicator_interface_info.parent_struct.properties[n]; 791s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 791s # { 791s # GVariant *value; 791s # 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); 791s # if (value != NULL) 791s # { 791s # g_variant_take_ref (value); 791s # g_variant_builder_add (&builder, "{sv}", info->name, value); 791s # g_variant_unref (value); 791s # } 791s # } 791s # } 791s # out: 791s # return g_variant_builder_end (&builder); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_ADD_PRIVATE (OrgProjectBarFrobnicatorSkeleton) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_bar_frobnicator_skeleton_finalize (GObject *object) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (object); 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # g_main_context_unref (skeleton->priv->context); 791s # g_mutex_clear (&skeleton->priv->lock); 791s # G_OBJECT_CLASS (org_project_bar_frobnicator_skeleton_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_skeleton_init (OrgProjectBarFrobnicatorSkeleton *skeleton) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # skeleton->priv = org_project_bar_frobnicator_skeleton_get_instance_private (skeleton); 791s # #else 791s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonPrivate); 791s # #endif 791s # 791s # g_mutex_init (&skeleton->priv->lock); 791s # skeleton->priv->context = g_main_context_ref_thread_default (); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_skeleton_class_init (OrgProjectBarFrobnicatorSkeletonClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusInterfaceSkeletonClass *skeleton_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_bar_frobnicator_skeleton_finalize; 791s # 791s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 791s # skeleton_class->get_info = org_project_bar_frobnicator_skeleton_dbus_interface_get_info; 791s # skeleton_class->get_properties = org_project_bar_frobnicator_skeleton_dbus_interface_get_properties; 791s # skeleton_class->flush = org_project_bar_frobnicator_skeleton_dbus_interface_flush; 791s # skeleton_class->get_vtable = org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorSkeletonPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_skeleton_new: 791s # * 791s # * Creates a skeleton object for the D-Bus interface org.project.Bar.Frobnicator. 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorSkeleton): The skeleton object. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_skeleton_new (void) 791s # { 791s # return ORG_PROJECT_BAR_FROBNICATOR (g_object_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, NULL)); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ 791s # * Code for interface com.acme.Coyote 791s # * ------------------------------------------------------------------------ 791s # */ 791s # 791s # /** 791s # * SECTION:ComAcmeCoyote 791s # * @title: ComAcmeCoyote 791s # * @short_description: Generated C code for the com.acme.Coyote D-Bus interface 791s # * 791s # * This section contains code for working with the com.acme.Coyote D-Bus interface in C. 791s # */ 791s # 791s # enum 791s # { 791s # _COM_ACME_COYOTE_SURPRISED, 791s # }; 791s # 791s # static unsigned _COM_ACME_COYOTE_SIGNALS[1] = { 0 }; 791s # 791s # /* ---- Introspection data for com.acme.Coyote ---- */ 791s # 791s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_run = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Run", 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "handle-run", 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_sleep = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Sleep", 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "handle-sleep", 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_attack = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Attack", 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "handle-attack", 791s # FALSE 791s # }; 791s # 791s # static const GDBusMethodInfo * const _com_acme_coyote_method_info_pointers[] = 791s # { 791s # &_com_acme_coyote_method_info_run.parent_struct, 791s # &_com_acme_coyote_method_info_sleep.parent_struct, 791s # &_com_acme_coyote_method_info_attack.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusSignalInfo _com_acme_coyote_signal_info_surprised = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Surprised", 791s # NULL, 791s # NULL 791s # }, 791s # "surprised" 791s # }; 791s # 791s # static const GDBusSignalInfo * const _com_acme_coyote_signal_info_pointers[] = 791s # { 791s # &_com_acme_coyote_signal_info_surprised.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusPropertyInfo _com_acme_coyote_property_info_mood = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Mood", 791s # (gchar *) "s", 791s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 791s # NULL 791s # }, 791s # "mood", 791s # FALSE, 791s # TRUE 791s # }; 791s # 791s # static const GDBusPropertyInfo * const _com_acme_coyote_property_info_pointers[] = 791s # { 791s # &_com_acme_coyote_property_info_mood.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusInterfaceInfo _com_acme_coyote_interface_info = 791s # { 791s # { 791s # -1, 791s # (gchar *) "com.acme.Coyote", 791s # (GDBusMethodInfo **) &_com_acme_coyote_method_info_pointers, 791s # (GDBusSignalInfo **) &_com_acme_coyote_signal_info_pointers, 791s # (GDBusPropertyInfo **) &_com_acme_coyote_property_info_pointers, 791s # NULL 791s # }, 791s # "com-acme-coyote", 791s # }; 791s # 791s # 791s # /** 791s # * com_acme_coyote_interface_info: 791s # * 791s # * Gets a machine-readable description of the com.acme.Coyote D-Bus interface. 791s # * 791s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 791s # */ 791s # GDBusInterfaceInfo * 791s # com_acme_coyote_interface_info (void) 791s # { 791s # return (GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_override_properties: 791s # * @klass: The class structure for a #GObject derived class. 791s # * @property_id_begin: The property id to assign to the first overridden property. 791s # * 791s # * Overrides all #GObject properties in the #ComAcmeCoyote interface for a concrete class. 791s # * The properties are overridden in the order they are defined. 791s # * 791s # * Returns: The last property id. 791s # */ 791s # guint 791s # com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin) 791s # { 791s # g_object_class_override_property (klass, property_id_begin++, "mood"); 791s # return property_id_begin - 1; 791s # } 791s # 791s # 791s # inline static void 791s # com_acme_coyote_signal_marshal_surprised ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # g_cclosure_marshal_VOID__VOID (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # com_acme_coyote_method_marshal_run ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # com_acme_coyote_method_marshal_sleep ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # com_acme_coyote_method_marshal_attack ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # 791s # /** 791s # * ComAcmeCoyote: 791s # * 791s # * Abstract interface type for the D-Bus interface com.acme.Coyote. 791s # */ 791s # 791s # /** 791s # * ComAcmeCoyoteIface: 791s # * @parent_iface: The parent interface. 791s # * @handle_attack: Handler for the #ComAcmeCoyote::handle-attack signal. 791s # * @handle_run: Handler for the #ComAcmeCoyote::handle-run signal. 791s # * @handle_sleep: Handler for the #ComAcmeCoyote::handle-sleep signal. 791s # * @get_mood: Getter for the #ComAcmeCoyote:mood property. 791s # * @surprised: Handler for the #ComAcmeCoyote::surprised signal. 791s # * 791s # * Virtual table for the D-Bus interface com.acme.Coyote. 791s # */ 791s # 791s # typedef ComAcmeCoyoteIface ComAcmeCoyoteInterface; 791s # G_DEFINE_INTERFACE (ComAcmeCoyote, com_acme_coyote, G_TYPE_OBJECT) 791s # 791s # static void 791s # com_acme_coyote_default_init (ComAcmeCoyoteIface *iface) 791s # { 791s # /* GObject signals for incoming D-Bus method calls: */ 791s # /** 791s # * ComAcmeCoyote::handle-run: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: A #GDBusMethodInvocation. 791s # * 791s # * Signal emitted when a remote caller is invoking the Run() D-Bus method. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # g_signal_new ("handle-run", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_run), 791s # g_signal_accumulator_true_handled, 791s # NULL, 791s # com_acme_coyote_method_marshal_run, 791s # G_TYPE_BOOLEAN, 791s # 1, 791s # G_TYPE_DBUS_METHOD_INVOCATION); 791s # 791s # /** 791s # * ComAcmeCoyote::handle-sleep: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: A #GDBusMethodInvocation. 791s # * 791s # * Signal emitted when a remote caller is invoking the Sleep() D-Bus method. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # g_signal_new ("handle-sleep", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_sleep), 791s # g_signal_accumulator_true_handled, 791s # NULL, 791s # com_acme_coyote_method_marshal_sleep, 791s # G_TYPE_BOOLEAN, 791s # 1, 791s # G_TYPE_DBUS_METHOD_INVOCATION); 791s # 791s # /** 791s # * ComAcmeCoyote::handle-attack: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: A #GDBusMethodInvocation. 791s # * 791s # * Signal emitted when a remote caller is invoking the Attack() D-Bus method. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # g_signal_new ("handle-attack", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_attack), 791s # g_signal_accumulator_true_handled, 791s # NULL, 791s # com_acme_coyote_method_marshal_attack, 791s # G_TYPE_BOOLEAN, 791s # 1, 791s # G_TYPE_DBUS_METHOD_INVOCATION); 791s # 791s # /* GObject signals for received D-Bus signals: */ 791s # /** 791s # * ComAcmeCoyote::surprised: 791s # * @object: A #ComAcmeCoyote. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "Surprised" is received. 791s # * 791s # * 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. 791s # */ 791s # _COM_ACME_COYOTE_SIGNALS[_COM_ACME_COYOTE_SURPRISED] = 791s # g_signal_new ("surprised", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, surprised), 791s # NULL, 791s # NULL, 791s # com_acme_coyote_signal_marshal_surprised, 791s # G_TYPE_NONE, 791s # 0); 791s # 791s # /* GObject properties for D-Bus properties: */ 791s # /** 791s # * ComAcmeCoyote:mood: 791s # * 791s # * Represents the D-Bus property "Mood". 791s # * 791s # * 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. 791s # */ 791s # g_object_interface_install_property (iface, 791s # g_param_spec_string ("mood", "Mood", "Mood", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_get_mood: (skip) 791s # * @object: A #ComAcmeCoyote. 791s # * 791s # * Gets the value of the "Mood" D-Bus property. 791s # * 791s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # const gchar * 791s # com_acme_coyote_get_mood (ComAcmeCoyote *object) 791s # { 791s # g_return_val_if_fail (IS_COM_ACME_COYOTE (object), NULL); 791s # 791s # return COM_ACME_COYOTE_GET_IFACE (object)->get_mood (object); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_dup_mood: (skip) 791s # * @object: A #ComAcmeCoyote. 791s # * 791s # * Gets a copy of the "Mood" D-Bus property. 791s # * 791s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 791s # * 791s # * Returns: (transfer full) (nullable): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). 791s # */ 791s # gchar * 791s # com_acme_coyote_dup_mood (ComAcmeCoyote *object) 791s # { 791s # gchar *value; 791s # g_object_get (G_OBJECT (object), "mood", &value, NULL); 791s # return value; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_set_mood: (skip) 791s # * @object: A #ComAcmeCoyote. 791s # * @value: The value to set. 791s # * 791s # * Sets the "Mood" D-Bus property to @value. 791s # * 791s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 791s # */ 791s # void 791s # com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value) 791s # { 791s # g_object_set (G_OBJECT (object), "mood", value, NULL); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_emit_surprised: 791s # * @object: A #ComAcmeCoyote. 791s # * 791s # * Emits the "Surprised" D-Bus signal. 791s # */ 791s # void 791s # com_acme_coyote_emit_surprised ( 791s # ComAcmeCoyote *object) 791s # { 791s # g_signal_emit (object, _COM_ACME_COYOTE_SIGNALS[_COM_ACME_COYOTE_SURPRISED], 0); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_run: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously invokes the Run() D-Bus method on @proxy. 791s # * 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()). 791s # * You can then call com_acme_coyote_call_run_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_call_run_sync() for the synchronous, blocking version of this method. 791s # */ 791s # void 791s # com_acme_coyote_call_run ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 791s # "Run", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # callback, 791s # user_data); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_run_finish: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_run(). 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Finishes an operation started with com_acme_coyote_call_run(). 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_run_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_run_sync: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Synchronously invokes the Run() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_call_run() for the asynchronous version of this method. 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_run_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 791s # "Run", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_sleep: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously invokes the Sleep() D-Bus method on @proxy. 791s # * 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()). 791s # * You can then call com_acme_coyote_call_sleep_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_call_sleep_sync() for the synchronous, blocking version of this method. 791s # */ 791s # void 791s # com_acme_coyote_call_sleep ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 791s # "Sleep", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # callback, 791s # user_data); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_sleep_finish: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_sleep(). 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Finishes an operation started with com_acme_coyote_call_sleep(). 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_sleep_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_sleep_sync: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Synchronously invokes the Sleep() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_call_sleep() for the asynchronous version of this method. 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_sleep_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 791s # "Sleep", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_attack: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously invokes the Attack() D-Bus method on @proxy. 791s # * 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()). 791s # * You can then call com_acme_coyote_call_attack_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_call_attack_sync() for the synchronous, blocking version of this method. 791s # */ 791s # void 791s # com_acme_coyote_call_attack ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 791s # "Attack", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # callback, 791s # user_data); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_attack_finish: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_attack(). 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Finishes an operation started with com_acme_coyote_call_attack(). 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_attack_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_attack_sync: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Synchronously invokes the Attack() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_call_attack() for the asynchronous version of this method. 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_attack_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 791s # "Attack", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_complete_run: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: (transfer full): A #GDBusMethodInvocation. 791s # * 791s # * 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. 791s # * 791s # * This method will free @invocation, you cannot use it afterwards. 791s # */ 791s # void 791s # com_acme_coyote_complete_run ( 791s # ComAcmeCoyote *object G_GNUC_UNUSED, 791s # GDBusMethodInvocation *invocation) 791s # { 791s # g_dbus_method_invocation_return_value (invocation, 791s # g_variant_new ("()")); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_complete_sleep: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: (transfer full): A #GDBusMethodInvocation. 791s # * 791s # * 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. 791s # * 791s # * This method will free @invocation, you cannot use it afterwards. 791s # */ 791s # void 791s # com_acme_coyote_complete_sleep ( 791s # ComAcmeCoyote *object G_GNUC_UNUSED, 791s # GDBusMethodInvocation *invocation) 791s # { 791s # g_dbus_method_invocation_return_value (invocation, 791s # g_variant_new ("()")); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_complete_attack: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: (transfer full): A #GDBusMethodInvocation. 791s # * 791s # * 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. 791s # * 791s # * This method will free @invocation, you cannot use it afterwards. 791s # */ 791s # void 791s # com_acme_coyote_complete_attack ( 791s # ComAcmeCoyote *object G_GNUC_UNUSED, 791s # GDBusMethodInvocation *invocation) 791s # { 791s # g_dbus_method_invocation_return_value (invocation, 791s # g_variant_new ("()")); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * ComAcmeCoyoteProxy: 791s # * 791s # * The #ComAcmeCoyoteProxy structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * ComAcmeCoyoteProxyClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #ComAcmeCoyoteProxy. 791s # */ 791s # 791s # struct _ComAcmeCoyoteProxyPrivate 791s # { 791s # GData *qdata; 791s # }; 791s # 791s # static void com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY, 791s # G_ADD_PRIVATE (ComAcmeCoyoteProxy) 791s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY, 791s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init)) 791s # 791s # #endif 791s # static void 791s # com_acme_coyote_proxy_finalize (GObject *object) 791s # { 791s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object); 791s # g_datalist_clear (&proxy->priv->qdata); 791s # G_OBJECT_CLASS (com_acme_coyote_proxy_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_get_property (GObject *object, 791s # guint prop_id, 791s # GValue *value, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # GVariant *variant; 791s # g_assert (prop_id != 0 && prop_id - 1 < 1); 791s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 791s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 791s # if (info->use_gvariant) 791s # { 791s # g_value_set_variant (value, variant); 791s # } 791s # else 791s # { 791s # if (variant != NULL) 791s # g_dbus_gvariant_to_gvalue (variant, value); 791s # } 791s # if (variant != NULL) 791s # g_variant_unref (variant); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_set_property_cb (GDBusProxy *proxy, 791s # GAsyncResult *res, 791s # gpointer user_data) 791s # { 791s # const _ExtendedGDBusPropertyInfo *info = user_data; 791s # GError *error; 791s # GVariant *_ret; 791s # error = NULL; 791s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 791s # if (!_ret) 791s # { 791s # g_warning ("Error setting property '%s' on interface com.acme.Coyote: %s (%s, %d)", 791s # info->parent_struct.name, 791s # error->message, g_quark_to_string (error->domain), error->code); 791s # g_error_free (error); 791s # } 791s # else 791s # { 791s # g_variant_unref (_ret); 791s # } 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_set_property (GObject *object, 791s # guint prop_id, 791s # const GValue *value, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # GVariant *variant; 791s # g_assert (prop_id != 0 && prop_id - 1 < 1); 791s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 791s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_dbus_proxy_call (G_DBUS_PROXY (object), 791s # "org.freedesktop.DBus.Properties.Set", 791s # g_variant_new ("(ssv)", "com.acme.Coyote", info->parent_struct.name, variant), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # NULL, (GAsyncReadyCallback) com_acme_coyote_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 791s # g_variant_unref (variant); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_g_signal (GDBusProxy *proxy, 791s # const gchar *sender_name G_GNUC_UNUSED, 791s # const gchar *signal_name, 791s # GVariant *parameters) 791s # { 791s # _ExtendedGDBusSignalInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # gsize n; 791s # guint signal_id; 791s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, signal_name); 791s # if (info == NULL) 791s # return; 791s # num_params = g_variant_n_children (parameters); 791s # paramv = g_new0 (GValue, num_params + 1); 791s # g_value_init (¶mv[0], TYPE_COM_ACME_COYOTE); 791s # g_value_set_object (¶mv[0], proxy); 791s # g_variant_iter_init (&iter, parameters); 791s # n = 1; 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE); 791s # g_signal_emitv (paramv, signal_id, 0, NULL); 791s # for (n = 0; n < num_params + 1; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_g_properties_changed (GDBusProxy *_proxy, 791s # GVariant *changed_properties, 791s # const gchar *const *invalidated_properties) 791s # { 791s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (_proxy); 791s # guint n; 791s # const gchar *key; 791s # GVariantIter *iter; 791s # _ExtendedGDBusPropertyInfo *info; 791s # g_variant_get (changed_properties, "a{sv}", &iter); 791s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, key); 791s # g_datalist_remove_data (&proxy->priv->qdata, key); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # g_variant_iter_free (iter); 791s # for (n = 0; invalidated_properties[n] != NULL; n++) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, invalidated_properties[n]); 791s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # } 791s # 791s # static const gchar * 791s # com_acme_coyote_proxy_get_mood (ComAcmeCoyote *object) 791s # { 791s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object); 791s # GVariant *variant; 791s # const gchar *value = NULL; 791s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "Mood"); 791s # if (variant != NULL) 791s # { 791s # value = g_variant_get_string (variant, NULL); 791s # g_variant_unref (variant); 791s # } 791s # return value; 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_init (ComAcmeCoyoteProxy *proxy) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # proxy->priv = com_acme_coyote_proxy_get_instance_private (proxy); 791s # #else 791s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyPrivate); 791s # #endif 791s # 791s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), com_acme_coyote_interface_info ()); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_class_init (ComAcmeCoyoteProxyClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusProxyClass *proxy_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = com_acme_coyote_proxy_finalize; 791s # gobject_class->get_property = com_acme_coyote_proxy_get_property; 791s # gobject_class->set_property = com_acme_coyote_proxy_set_property; 791s # 791s # proxy_class = G_DBUS_PROXY_CLASS (klass); 791s # proxy_class->g_signal = com_acme_coyote_proxy_g_signal; 791s # proxy_class->g_properties_changed = com_acme_coyote_proxy_g_properties_changed; 791s # 791s # com_acme_coyote_override_properties (gobject_class, 1); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (ComAcmeCoyoteProxyPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface) 791s # { 791s # iface->get_mood = com_acme_coyote_proxy_get_mood; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously creates a proxy for the D-Bus interface com.acme.Coyote. See g_dbus_proxy_new() for more details. 791s # * 791s # * 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()). 791s # * You can then call com_acme_coyote_proxy_new_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_proxy_new_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # com_acme_coyote_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with com_acme_coyote_proxy_new(). 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return COM_ACME_COYOTE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_sync: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Synchronously creates a proxy for the D-Bus interface com.acme.Coyote. See g_dbus_proxy_new_sync() for more details. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_proxy_new() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return COM_ACME_COYOTE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_for_bus: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Like com_acme_coyote_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * 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()). 791s # * You can then call com_acme_coyote_proxy_new_for_bus_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # com_acme_coyote_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_for_bus_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new_for_bus(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with com_acme_coyote_proxy_new_for_bus(). 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return COM_ACME_COYOTE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_for_bus_sync: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Like com_acme_coyote_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_proxy_new_for_bus() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return COM_ACME_COYOTE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * ComAcmeCoyoteSkeleton: 791s # * 791s # * The #ComAcmeCoyoteSkeleton structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * ComAcmeCoyoteSkeletonClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #ComAcmeCoyoteSkeleton. 791s # */ 791s # 791s # struct _ComAcmeCoyoteSkeletonPrivate 791s # { 791s # GValue *properties; 791s # GList *changed_properties; 791s # GSource *changed_properties_idle_source; 791s # GMainContext *context; 791s # GMutex lock; 791s # }; 791s # 791s # static void 791s # _com_acme_coyote_skeleton_handle_method_call ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name, 791s # const gchar *method_name, 791s # GVariant *parameters, 791s # GDBusMethodInvocation *invocation, 791s # gpointer user_data) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 791s # _ExtendedGDBusMethodInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # guint num_extra; 791s # gsize n; 791s # guint signal_id; 791s # GValue return_value = G_VALUE_INIT; 791s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 791s # g_assert (info != NULL); 791s # num_params = g_variant_n_children (parameters); 791s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 791s # n = 0; 791s # g_value_init (¶mv[n], TYPE_COM_ACME_COYOTE); 791s # g_value_set_object (¶mv[n++], skeleton); 791s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 791s # g_value_set_object (¶mv[n++], invocation); 791s # if (info->pass_fdlist) 791s # { 791s # #ifdef G_OS_UNIX 791s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 791s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 791s # #else 791s # g_assert_not_reached (); 791s # #endif 791s # } 791s # g_variant_iter_init (&iter, parameters); 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE); 791s # g_value_init (&return_value, G_TYPE_BOOLEAN); 791s # g_signal_emitv (paramv, signal_id, 0, &return_value); 791s # if (!g_value_get_boolean (&return_value)) 791s # 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); 791s # g_value_unset (&return_value); 791s # for (n = 0; n < num_params + num_extra; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static GVariant * 791s # _com_acme_coyote_skeleton_handle_get_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # GVariant *ret; 791s # ret = NULL; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # g_value_init (&value, pspec->value_type); 791s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_value_unset (&value); 791s # } 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _com_acme_coyote_skeleton_handle_set_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GVariant *variant, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # gboolean ret; 791s # ret = FALSE; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # if (info->use_gvariant) 791s # g_value_set_variant (&value, variant); 791s # else 791s # g_dbus_gvariant_to_gvalue (variant, &value); 791s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # g_value_unset (&value); 791s # ret = TRUE; 791s # } 791s # return ret; 791s # } 791s # 791s # static const GDBusInterfaceVTable _com_acme_coyote_skeleton_vtable = 791s # { 791s # _com_acme_coyote_skeleton_handle_method_call, 791s # _com_acme_coyote_skeleton_handle_get_property, 791s # _com_acme_coyote_skeleton_handle_set_property, 791s # {NULL} 791s # }; 791s # 791s # static GDBusInterfaceInfo * 791s # com_acme_coyote_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return com_acme_coyote_interface_info (); 791s # } 791s # 791s # static GDBusInterfaceVTable * 791s # com_acme_coyote_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return (GDBusInterfaceVTable *) &_com_acme_coyote_skeleton_vtable; 791s # } 791s # 791s # static GVariant * 791s # com_acme_coyote_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton); 791s # 791s # GVariantBuilder builder; 791s # guint n; 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #else 791s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #endif 791s # if (_com_acme_coyote_interface_info.parent_struct.properties == NULL) 791s # goto out; 791s # for (n = 0; _com_acme_coyote_interface_info.parent_struct.properties[n] != NULL; n++) 791s # { 791s # GDBusPropertyInfo *info = _com_acme_coyote_interface_info.parent_struct.properties[n]; 791s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 791s # { 791s # GVariant *value; 791s # 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); 791s # if (value != NULL) 791s # { 791s # g_variant_take_ref (value); 791s # g_variant_builder_add (&builder, "{sv}", info->name, value); 791s # g_variant_unref (value); 791s # } 791s # } 791s # } 791s # out: 791s # return g_variant_builder_end (&builder); 791s # } 791s # 791s # static gboolean _com_acme_coyote_emit_changed (gpointer user_data); 791s # 791s # static void 791s # com_acme_coyote_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton); 791s # gboolean emit_changed = FALSE; 791s # 791s # g_mutex_lock (&skeleton->priv->lock); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # { 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # skeleton->priv->changed_properties_idle_source = NULL; 791s # emit_changed = TRUE; 791s # } 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # 791s # if (emit_changed) 791s # _com_acme_coyote_emit_changed (skeleton); 791s # } 791s # 791s # static void 791s # _com_acme_coyote_on_signal_surprised ( 791s # ComAcmeCoyote *object) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", "Surprised", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_ADD_PRIVATE (ComAcmeCoyoteSkeleton) 791s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init)) 791s # 791s # #endif 791s # static void 791s # com_acme_coyote_skeleton_finalize (GObject *object) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # guint n; 791s # for (n = 0; n < 1; n++) 791s # g_value_unset (&skeleton->priv->properties[n]); 791s # g_free (skeleton->priv->properties); 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # g_main_context_unref (skeleton->priv->context); 791s # g_mutex_clear (&skeleton->priv->lock); 791s # G_OBJECT_CLASS (com_acme_coyote_skeleton_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_get_property (GObject *object, 791s # guint prop_id, 791s # GValue *value, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # g_assert (prop_id != 0 && prop_id - 1 < 1); 791s # g_mutex_lock (&skeleton->priv->lock); 791s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # } 791s # 791s # static gboolean 791s # _com_acme_coyote_emit_changed (gpointer user_data) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 791s # GList *l; 791s # GVariantBuilder builder; 791s # GVariantBuilder invalidated_builder; 791s # guint num_changes; 791s # 791s # g_mutex_lock (&skeleton->priv->lock); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 791s # #else 791s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 791s # #endif 791s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 791s # { 791s # ChangedProperty *cp = l->data; 791s # GVariant *variant; 791s # const GValue *cur_value; 791s # 791s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 791s # if (!_g_value_equal (cur_value, &cp->orig_value)) 791s # { 791s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 791s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 791s # g_variant_unref (variant); 791s # num_changes++; 791s # } 791s # } 791s # if (num_changes > 0) 791s # { 791s # GList *connections, *ll; 791s # GVariant *signal_variant; 791s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "com.acme.Coyote", 791s # &builder, &invalidated_builder)); 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # for (ll = connections; ll != NULL; ll = ll->next) 791s # { 791s # GDBusConnection *connection = ll->data; 791s # 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 791s # "org.freedesktop.DBus.Properties", 791s # "PropertiesChanged", 791s # signal_variant, 791s # NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # else 791s # { 791s # g_variant_builder_clear (&builder); 791s # g_variant_builder_clear (&invalidated_builder); 791s # } 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # skeleton->priv->changed_properties = NULL; 791s # skeleton->priv->changed_properties_idle_source = NULL; 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # return FALSE; 791s # } 791s # 791s # static void 791s # _com_acme_coyote_schedule_emit_changed (ComAcmeCoyoteSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 791s # { 791s # ChangedProperty *cp; 791s # GList *l; 791s # cp = NULL; 791s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 791s # { 791s # ChangedProperty *i_cp = l->data; 791s # if (i_cp->info == info) 791s # { 791s # cp = i_cp; 791s # break; 791s # } 791s # } 791s # if (cp == NULL) 791s # { 791s # cp = g_new0 (ChangedProperty, 1); 791s # cp->prop_id = prop_id; 791s # cp->info = info; 791s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 791s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 791s # g_value_copy (orig_value, &cp->orig_value); 791s # } 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_notify (GObject *object, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # g_mutex_lock (&skeleton->priv->lock); 791s # if (skeleton->priv->changed_properties != NULL && 791s # skeleton->priv->changed_properties_idle_source == NULL) 791s # { 791s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 791s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 791s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _com_acme_coyote_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 791s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _com_acme_coyote_emit_changed"); 791s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 791s # g_source_unref (skeleton->priv->changed_properties_idle_source); 791s # } 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_set_property (GObject *object, 791s # guint prop_id, 791s # const GValue *value, 791s # GParamSpec *pspec) 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # g_assert (prop_id != 0 && prop_id - 1 < 1); 791s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 791s # g_mutex_lock (&skeleton->priv->lock); 791s # g_object_freeze_notify (object); 791s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 791s # { 791s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 791s # info->emits_changed_signal) 791s # _com_acme_coyote_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 791s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 791s # g_object_notify_by_pspec (object, pspec); 791s # } 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # g_object_thaw_notify (object); 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_init (ComAcmeCoyoteSkeleton *skeleton) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # skeleton->priv = com_acme_coyote_skeleton_get_instance_private (skeleton); 791s # #else 791s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonPrivate); 791s # #endif 791s # 791s # g_mutex_init (&skeleton->priv->lock); 791s # skeleton->priv->context = g_main_context_ref_thread_default (); 791s # skeleton->priv->properties = g_new0 (GValue, 1); 791s # g_value_init (&skeleton->priv->properties[0], G_TYPE_STRING); 791s # } 791s # 791s # static const gchar * 791s # com_acme_coyote_skeleton_get_mood (ComAcmeCoyote *object) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # const gchar *value; 791s # g_mutex_lock (&skeleton->priv->lock); 791s # value = g_marshal_value_peek_string (&(skeleton->priv->properties[0])); 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # return value; 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_class_init (ComAcmeCoyoteSkeletonClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusInterfaceSkeletonClass *skeleton_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = com_acme_coyote_skeleton_finalize; 791s # gobject_class->get_property = com_acme_coyote_skeleton_get_property; 791s # gobject_class->set_property = com_acme_coyote_skeleton_set_property; 791s # gobject_class->notify = com_acme_coyote_skeleton_notify; 791s # 791s # 791s # com_acme_coyote_override_properties (gobject_class, 1); 791s # 791s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 791s # skeleton_class->get_info = com_acme_coyote_skeleton_dbus_interface_get_info; 791s # skeleton_class->get_properties = com_acme_coyote_skeleton_dbus_interface_get_properties; 791s # skeleton_class->flush = com_acme_coyote_skeleton_dbus_interface_flush; 791s # skeleton_class->get_vtable = com_acme_coyote_skeleton_dbus_interface_get_vtable; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (ComAcmeCoyoteSkeletonPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface) 791s # { 791s # iface->surprised = _com_acme_coyote_on_signal_surprised; 791s # iface->get_mood = com_acme_coyote_skeleton_get_mood; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_skeleton_new: 791s # * 791s # * Creates a skeleton object for the D-Bus interface com.acme.Coyote. 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteSkeleton): The skeleton object. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_skeleton_new (void) 791s # { 791s # return COM_ACME_COYOTE (g_object_new (TYPE_COM_ACME_COYOTE_SKELETON, NULL)); 791s # } 791s # Error: 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpepyhlnz9/tmpowjn9j1u2.xml', '/tmp/tmpepyhlnz9/tmpx7482tp51.xml', '--output', '-', '--body'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifdef HAVE_CONFIG_H 791s # # include "config.h" 791s # #endif 791s # 791s # #include 791s # #ifdef G_OS_UNIX 791s # # include 791s # #endif 791s # 791s # #ifdef G_ENABLE_DEBUG 791s # #define g_marshal_value_peek_boolean(v) g_value_get_boolean (v) 791s # #define g_marshal_value_peek_char(v) g_value_get_schar (v) 791s # #define g_marshal_value_peek_uchar(v) g_value_get_uchar (v) 791s # #define g_marshal_value_peek_int(v) g_value_get_int (v) 791s # #define g_marshal_value_peek_uint(v) g_value_get_uint (v) 791s # #define g_marshal_value_peek_long(v) g_value_get_long (v) 791s # #define g_marshal_value_peek_ulong(v) g_value_get_ulong (v) 791s # #define g_marshal_value_peek_int64(v) g_value_get_int64 (v) 791s # #define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v) 791s # #define g_marshal_value_peek_enum(v) g_value_get_enum (v) 791s # #define g_marshal_value_peek_flags(v) g_value_get_flags (v) 791s # #define g_marshal_value_peek_float(v) g_value_get_float (v) 791s # #define g_marshal_value_peek_double(v) g_value_get_double (v) 791s # #define g_marshal_value_peek_string(v) (char*) g_value_get_string (v) 791s # #define g_marshal_value_peek_param(v) g_value_get_param (v) 791s # #define g_marshal_value_peek_boxed(v) g_value_get_boxed (v) 791s # #define g_marshal_value_peek_pointer(v) g_value_get_pointer (v) 791s # #define g_marshal_value_peek_object(v) g_value_get_object (v) 791s # #define g_marshal_value_peek_variant(v) g_value_get_variant (v) 791s # #else /* !G_ENABLE_DEBUG */ 791s # /* WARNING: This code accesses GValues directly, which is UNSUPPORTED API. 791s # * Do not access GValues directly in your code. Instead, use the 791s # * g_value_get_*() functions 791s # */ 791s # #define g_marshal_value_peek_boolean(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_char(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_int(v) (v)->data[0].v_int 791s # #define g_marshal_value_peek_uint(v) (v)->data[0].v_uint 791s # #define g_marshal_value_peek_long(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_int64(v) (v)->data[0].v_int64 791s # #define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64 791s # #define g_marshal_value_peek_enum(v) (v)->data[0].v_long 791s # #define g_marshal_value_peek_flags(v) (v)->data[0].v_ulong 791s # #define g_marshal_value_peek_float(v) (v)->data[0].v_float 791s # #define g_marshal_value_peek_double(v) (v)->data[0].v_double 791s # #define g_marshal_value_peek_string(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_param(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_object(v) (v)->data[0].v_pointer 791s # #define g_marshal_value_peek_variant(v) (v)->data[0].v_pointer 791s # #endif /* !G_ENABLE_DEBUG */ 791s # 791s # typedef struct 791s # { 791s # GDBusArgInfo parent_struct; 791s # gboolean use_gvariant; 791s # } _ExtendedGDBusArgInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusMethodInfo parent_struct; 791s # const gchar *signal_name; 791s # gboolean pass_fdlist; 791s # } _ExtendedGDBusMethodInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusSignalInfo parent_struct; 791s # const gchar *signal_name; 791s # } _ExtendedGDBusSignalInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusPropertyInfo parent_struct; 791s # const gchar *hyphen_name; 791s # guint use_gvariant : 1; 791s # guint emits_changed_signal : 1; 791s # } _ExtendedGDBusPropertyInfo; 791s # 791s # typedef struct 791s # { 791s # GDBusInterfaceInfo parent_struct; 791s # const gchar *hyphen_name; 791s # } _ExtendedGDBusInterfaceInfo; 791s # 791s # typedef struct 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # guint prop_id; 791s # GValue orig_value; /* the value before the change */ 791s # } ChangedProperty; 791s # 791s # static void 791s # _changed_property_free (ChangedProperty *data) 791s # { 791s # g_value_unset (&data->orig_value); 791s # g_free (data); 791s # } 791s # 791s # static gboolean 791s # _g_strv_equal0 (gchar **a, gchar **b) 791s # { 791s # gboolean ret = FALSE; 791s # guint n; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # if (g_strv_length (a) != g_strv_length (b)) 791s # goto out; 791s # for (n = 0; a[n] != NULL; n++) 791s # if (g_strcmp0 (a[n], b[n]) != 0) 791s # goto out; 791s # ret = TRUE; 791s # out: 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _g_variant_equal0 (GVariant *a, GVariant *b) 791s # { 791s # gboolean ret = FALSE; 791s # if (a == NULL && b == NULL) 791s # { 791s # ret = TRUE; 791s # goto out; 791s # } 791s # if (a == NULL || b == NULL) 791s # goto out; 791s # ret = g_variant_equal (a, b); 791s # out: 791s # return ret; 791s # } 791s # 791s # G_GNUC_UNUSED static gboolean 791s # _g_value_equal (const GValue *a, const GValue *b) 791s # { 791s # gboolean ret = FALSE; 791s # g_assert (G_VALUE_TYPE (a) == G_VALUE_TYPE (b)); 791s # switch (G_VALUE_TYPE (a)) 791s # { 791s # case G_TYPE_BOOLEAN: 791s # ret = (g_value_get_boolean (a) == g_value_get_boolean (b)); 791s # break; 791s # case G_TYPE_UCHAR: 791s # ret = (g_value_get_uchar (a) == g_value_get_uchar (b)); 791s # break; 791s # case G_TYPE_INT: 791s # ret = (g_value_get_int (a) == g_value_get_int (b)); 791s # break; 791s # case G_TYPE_UINT: 791s # ret = (g_value_get_uint (a) == g_value_get_uint (b)); 791s # break; 791s # case G_TYPE_INT64: 791s # ret = (g_value_get_int64 (a) == g_value_get_int64 (b)); 791s # break; 791s # case G_TYPE_UINT64: 791s # ret = (g_value_get_uint64 (a) == g_value_get_uint64 (b)); 791s # break; 791s # case G_TYPE_DOUBLE: 791s # { 791s # /* Avoid -Wfloat-equal warnings by doing a direct bit compare */ 791s # gdouble da = g_value_get_double (a); 791s # gdouble db = g_value_get_double (b); 791s # ret = memcmp (&da, &db, sizeof (gdouble)) == 0; 791s # } 791s # break; 791s # case G_TYPE_STRING: 791s # ret = (g_strcmp0 (g_value_get_string (a), g_value_get_string (b)) == 0); 791s # break; 791s # case G_TYPE_VARIANT: 791s # ret = _g_variant_equal0 (g_value_get_variant (a), g_value_get_variant (b)); 791s # break; 791s # default: 791s # if (G_VALUE_TYPE (a) == G_TYPE_STRV) 791s # ret = _g_strv_equal0 (g_value_get_boxed (a), g_value_get_boxed (b)); 791s # else 791s # g_critical ("_g_value_equal() does not handle type %s", g_type_name (G_VALUE_TYPE (a))); 791s # break; 791s # } 791s # return ret; 791s # } 791s # 791s # static void 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint G_GNUC_UNUSED, 791s # void *marshal_data) 791s # { 791s # typedef gboolean (*_GDbusCodegenMarshalBoolean_ObjectFunc) 791s # (void *data1, 791s # GDBusMethodInvocation *arg_method_invocation, 791s # void *data2); 791s # _GDbusCodegenMarshalBoolean_ObjectFunc callback; 791s # GCClosure *cc = (GCClosure*) closure; 791s # void *data1, *data2; 791s # gboolean v_return; 791s # 791s # g_return_if_fail (return_value != NULL); 791s # g_return_if_fail (n_param_values == 2); 791s # 791s # if (G_CCLOSURE_SWAP_DATA (closure)) 791s # { 791s # data1 = closure->data; 791s # data2 = g_value_peek_pointer (param_values + 0); 791s # } 791s # else 791s # { 791s # data1 = g_value_peek_pointer (param_values + 0); 791s # data2 = closure->data; 791s # } 791s # 791s # callback = (_GDbusCodegenMarshalBoolean_ObjectFunc) 791s # (marshal_data ? marshal_data : cc->callback); 791s # 791s # v_return = 791s # callback (data1, 791s # g_marshal_value_peek_object (param_values + 1), 791s # data2); 791s # 791s # g_value_set_boolean (return_value, v_return); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ 791s # * Code for interface org.project.Bar.Frobnicator 791s # * ------------------------------------------------------------------------ 791s # */ 791s # 791s # /** 791s # * SECTION:OrgProjectBarFrobnicator 791s # * @title: OrgProjectBarFrobnicator 791s # * @short_description: Generated C code for the org.project.Bar.Frobnicator D-Bus interface 791s # * 791s # * This section contains code for working with the org.project.Bar.Frobnicator D-Bus interface in C. 791s # */ 791s # 791s # /* ---- Introspection data for org.project.Bar.Frobnicator ---- */ 791s # 791s # static const _ExtendedGDBusMethodInfo _org_project_bar_frobnicator_method_info_random_method = 791s # { 791s # { 791s # -1, 791s # (gchar *) "RandomMethod", 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "handle-random-method", 791s # FALSE 791s # }; 791s # 791s # static const GDBusMethodInfo * const _org_project_bar_frobnicator_method_info_pointers[] = 791s # { 791s # &_org_project_bar_frobnicator_method_info_random_method.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusInterfaceInfo _org_project_bar_frobnicator_interface_info = 791s # { 791s # { 791s # -1, 791s # (gchar *) "org.project.Bar.Frobnicator", 791s # (GDBusMethodInfo **) &_org_project_bar_frobnicator_method_info_pointers, 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "org-project-bar-frobnicator", 791s # }; 791s # 791s # 791s # /** 791s # * org_project_bar_frobnicator_interface_info: 791s # * 791s # * Gets a machine-readable description of the org.project.Bar.Frobnicator D-Bus interface. 791s # * 791s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 791s # */ 791s # GDBusInterfaceInfo * 791s # org_project_bar_frobnicator_interface_info (void) 791s # { 791s # return (GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_override_properties: 791s # * @klass: The class structure for a #GObject derived class. 791s # * @property_id_begin: The property id to assign to the first overridden property. 791s # * 791s # * Overrides all #GObject properties in the #OrgProjectBarFrobnicator interface for a concrete class. 791s # * The properties are overridden in the order they are defined. 791s # * 791s # * Returns: The last property id. 791s # */ 791s # guint 791s # org_project_bar_frobnicator_override_properties (GObjectClass *klass G_GNUC_UNUSED, guint property_id_begin) 791s # { 791s # return property_id_begin - 1; 791s # } 791s # 791s # 791s # inline static void 791s # org_project_bar_frobnicator_method_marshal_random_method ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # 791s # /** 791s # * OrgProjectBarFrobnicator: 791s # * 791s # * Abstract interface type for the D-Bus interface org.project.Bar.Frobnicator. 791s # */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorIface: 791s # * @parent_iface: The parent interface. 791s # * @handle_random_method: Handler for the #OrgProjectBarFrobnicator::handle-random-method signal. 791s # * 791s # * Virtual table for the D-Bus interface org.project.Bar.Frobnicator. 791s # */ 791s # 791s # typedef OrgProjectBarFrobnicatorIface OrgProjectBarFrobnicatorInterface; 791s # G_DEFINE_INTERFACE (OrgProjectBarFrobnicator, org_project_bar_frobnicator, G_TYPE_OBJECT) 791s # 791s # static void 791s # org_project_bar_frobnicator_default_init (OrgProjectBarFrobnicatorIface *iface) 791s # { 791s # /* GObject signals for incoming D-Bus method calls: */ 791s # /** 791s # * OrgProjectBarFrobnicator::handle-random-method: 791s # * @object: A #OrgProjectBarFrobnicator. 791s # * @invocation: A #GDBusMethodInvocation. 791s # * 791s # * Signal emitted when a remote caller is invoking the RandomMethod() D-Bus method. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # g_signal_new ("handle-random-method", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (OrgProjectBarFrobnicatorIface, handle_random_method), 791s # g_signal_accumulator_true_handled, 791s # NULL, 791s # org_project_bar_frobnicator_method_marshal_random_method, 791s # G_TYPE_BOOLEAN, 791s # 1, 791s # G_TYPE_DBUS_METHOD_INVOCATION); 791s # 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_call_random_method: 791s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously invokes the RandomMethod() D-Bus method on @proxy. 791s # * 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()). 791s # * You can then call org_project_bar_frobnicator_call_random_method_finish() to get the result of the operation. 791s # * 791s # * See org_project_bar_frobnicator_call_random_method_sync() for the synchronous, blocking version of this method. 791s # */ 791s # void 791s # org_project_bar_frobnicator_call_random_method ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 791s # "RandomMethod", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # callback, 791s # user_data); 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_call_random_method_finish: 791s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_call_random_method(). 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Finishes an operation started with org_project_bar_frobnicator_call_random_method(). 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # org_project_bar_frobnicator_call_random_method_finish ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_call_random_method_sync: 791s # * @proxy: A #OrgProjectBarFrobnicatorProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Synchronously invokes the RandomMethod() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_bar_frobnicator_call_random_method() for the asynchronous version of this method. 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # org_project_bar_frobnicator_call_random_method_sync ( 791s # OrgProjectBarFrobnicator *proxy, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 791s # "RandomMethod", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_complete_random_method: 791s # * @object: A #OrgProjectBarFrobnicator. 791s # * @invocation: (transfer full): A #GDBusMethodInvocation. 791s # * 791s # * 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. 791s # * 791s # * This method will free @invocation, you cannot use it afterwards. 791s # */ 791s # void 791s # org_project_bar_frobnicator_complete_random_method ( 791s # OrgProjectBarFrobnicator *object G_GNUC_UNUSED, 791s # GDBusMethodInvocation *invocation) 791s # { 791s # g_dbus_method_invocation_return_value (invocation, 791s # g_variant_new ("()")); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorProxy: 791s # * 791s # * The #OrgProjectBarFrobnicatorProxy structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorProxyClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectBarFrobnicatorProxy. 791s # */ 791s # 791s # struct _OrgProjectBarFrobnicatorProxyPrivate 791s # { 791s # GData *qdata; 791s # }; 791s # 791s # static void org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY, 791s # G_ADD_PRIVATE (OrgProjectBarFrobnicatorProxy) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorProxy, org_project_bar_frobnicator_proxy, G_TYPE_DBUS_PROXY, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_proxy_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_bar_frobnicator_proxy_finalize (GObject *object) 791s # { 791s # OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (object); 791s # g_datalist_clear (&proxy->priv->qdata); 791s # G_OBJECT_CLASS (org_project_bar_frobnicator_proxy_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_get_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_set_property (GObject *object G_GNUC_UNUSED, 791s # guint prop_id G_GNUC_UNUSED, 791s # const GValue *value G_GNUC_UNUSED, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_g_signal (GDBusProxy *proxy, 791s # const gchar *sender_name G_GNUC_UNUSED, 791s # const gchar *signal_name, 791s # GVariant *parameters) 791s # { 791s # _ExtendedGDBusSignalInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # gsize n; 791s # guint signal_id; 791s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, signal_name); 791s # if (info == NULL) 791s # return; 791s # num_params = g_variant_n_children (parameters); 791s # paramv = g_new0 (GValue, num_params + 1); 791s # g_value_init (¶mv[0], TYPE_ORG_PROJECT_BAR_FROBNICATOR); 791s # g_value_set_object (¶mv[0], proxy); 791s # g_variant_iter_init (&iter, parameters); 791s # n = 1; 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR); 791s # g_signal_emitv (paramv, signal_id, 0, NULL); 791s # for (n = 0; n < num_params + 1; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_g_properties_changed (GDBusProxy *_proxy, 791s # GVariant *changed_properties, 791s # const gchar *const *invalidated_properties) 791s # { 791s # OrgProjectBarFrobnicatorProxy *proxy = ORG_PROJECT_BAR_FROBNICATOR_PROXY (_proxy); 791s # guint n; 791s # const gchar *key; 791s # GVariantIter *iter; 791s # _ExtendedGDBusPropertyInfo *info; 791s # g_variant_get (changed_properties, "a{sv}", &iter); 791s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, key); 791s # g_datalist_remove_data (&proxy->priv->qdata, key); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # g_variant_iter_free (iter); 791s # for (n = 0; invalidated_properties[n] != NULL; n++) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, invalidated_properties[n]); 791s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_init (OrgProjectBarFrobnicatorProxy *proxy) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # proxy->priv = org_project_bar_frobnicator_proxy_get_instance_private (proxy); 791s # #else 791s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_ORG_PROJECT_BAR_FROBNICATOR_PROXY, OrgProjectBarFrobnicatorProxyPrivate); 791s # #endif 791s # 791s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), org_project_bar_frobnicator_interface_info ()); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_class_init (OrgProjectBarFrobnicatorProxyClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusProxyClass *proxy_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_bar_frobnicator_proxy_finalize; 791s # gobject_class->get_property = org_project_bar_frobnicator_proxy_get_property; 791s # gobject_class->set_property = org_project_bar_frobnicator_proxy_set_property; 791s # 791s # proxy_class = G_DBUS_PROXY_CLASS (klass); 791s # proxy_class->g_signal = org_project_bar_frobnicator_proxy_g_signal; 791s # proxy_class->g_properties_changed = org_project_bar_frobnicator_proxy_g_properties_changed; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorProxyPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_proxy_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously creates a proxy for the D-Bus interface org.project.Bar.Frobnicator. See g_dbus_proxy_new() for more details. 791s # * 791s # * 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()). 791s # * You can then call org_project_bar_frobnicator_proxy_new_finish() to get the result of the operation. 791s # * 791s # * See org_project_bar_frobnicator_proxy_new_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_bar_frobnicator_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_bar_frobnicator_proxy_new(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_sync: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Synchronously creates a proxy for the D-Bus interface org.project.Bar.Frobnicator. See g_dbus_proxy_new_sync() for more details. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_bar_frobnicator_proxy_new() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_for_bus: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Like org_project_bar_frobnicator_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * 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()). 791s # * You can then call org_project_bar_frobnicator_proxy_new_for_bus_finish() to get the result of the operation. 791s # * 791s # * See org_project_bar_frobnicator_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # org_project_bar_frobnicator_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_for_bus_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to org_project_bar_frobnicator_proxy_new_for_bus(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with org_project_bar_frobnicator_proxy_new_for_bus(). 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_proxy_new_for_bus_sync: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Like org_project_bar_frobnicator_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See org_project_bar_frobnicator_proxy_new_for_bus() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return ORG_PROJECT_BAR_FROBNICATOR (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorSkeleton: 791s # * 791s # * The #OrgProjectBarFrobnicatorSkeleton structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * OrgProjectBarFrobnicatorSkeletonClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #OrgProjectBarFrobnicatorSkeleton. 791s # */ 791s # 791s # struct _OrgProjectBarFrobnicatorSkeletonPrivate 791s # { 791s # GValue *properties; 791s # GList *changed_properties; 791s # GSource *changed_properties_idle_source; 791s # GMainContext *context; 791s # GMutex lock; 791s # }; 791s # 791s # static void 791s # _org_project_bar_frobnicator_skeleton_handle_method_call ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name, 791s # const gchar *method_name, 791s # GVariant *parameters, 791s # GDBusMethodInvocation *invocation, 791s # gpointer user_data) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 791s # _ExtendedGDBusMethodInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # guint num_extra; 791s # gsize n; 791s # guint signal_id; 791s # GValue return_value = G_VALUE_INIT; 791s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 791s # g_assert (info != NULL); 791s # num_params = g_variant_n_children (parameters); 791s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 791s # n = 0; 791s # g_value_init (¶mv[n], TYPE_ORG_PROJECT_BAR_FROBNICATOR); 791s # g_value_set_object (¶mv[n++], skeleton); 791s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 791s # g_value_set_object (¶mv[n++], invocation); 791s # if (info->pass_fdlist) 791s # { 791s # #ifdef G_OS_UNIX 791s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 791s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 791s # #else 791s # g_assert_not_reached (); 791s # #endif 791s # } 791s # g_variant_iter_init (&iter, parameters); 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_ORG_PROJECT_BAR_FROBNICATOR); 791s # g_value_init (&return_value, G_TYPE_BOOLEAN); 791s # g_signal_emitv (paramv, signal_id, 0, &return_value); 791s # if (!g_value_get_boolean (&return_value)) 791s # 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); 791s # g_value_unset (&return_value); 791s # for (n = 0; n < num_params + num_extra; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static GVariant * 791s # _org_project_bar_frobnicator_skeleton_handle_get_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # GVariant *ret; 791s # ret = NULL; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # g_value_init (&value, pspec->value_type); 791s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_value_unset (&value); 791s # } 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _org_project_bar_frobnicator_skeleton_handle_set_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GVariant *variant, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # gboolean ret; 791s # ret = FALSE; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_org_project_bar_frobnicator_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # if (info->use_gvariant) 791s # g_value_set_variant (&value, variant); 791s # else 791s # g_dbus_gvariant_to_gvalue (variant, &value); 791s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # g_value_unset (&value); 791s # ret = TRUE; 791s # } 791s # return ret; 791s # } 791s # 791s # static const GDBusInterfaceVTable _org_project_bar_frobnicator_skeleton_vtable = 791s # { 791s # _org_project_bar_frobnicator_skeleton_handle_method_call, 791s # _org_project_bar_frobnicator_skeleton_handle_get_property, 791s # _org_project_bar_frobnicator_skeleton_handle_set_property, 791s # {NULL} 791s # }; 791s # 791s # static GDBusInterfaceInfo * 791s # org_project_bar_frobnicator_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return org_project_bar_frobnicator_interface_info (); 791s # } 791s # 791s # static GDBusInterfaceVTable * 791s # org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return (GDBusInterfaceVTable *) &_org_project_bar_frobnicator_skeleton_vtable; 791s # } 791s # 791s # static GVariant * 791s # org_project_bar_frobnicator_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (_skeleton); 791s # 791s # GVariantBuilder builder; 791s # guint n; 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #else 791s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #endif 791s # if (_org_project_bar_frobnicator_interface_info.parent_struct.properties == NULL) 791s # goto out; 791s # for (n = 0; _org_project_bar_frobnicator_interface_info.parent_struct.properties[n] != NULL; n++) 791s # { 791s # GDBusPropertyInfo *info = _org_project_bar_frobnicator_interface_info.parent_struct.properties[n]; 791s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 791s # { 791s # GVariant *value; 791s # 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); 791s # if (value != NULL) 791s # { 791s # g_variant_take_ref (value); 791s # g_variant_builder_add (&builder, "{sv}", info->name, value); 791s # g_variant_unref (value); 791s # } 791s # } 791s # } 791s # out: 791s # return g_variant_builder_end (&builder); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # static void org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_ADD_PRIVATE (OrgProjectBarFrobnicatorSkeleton) 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (OrgProjectBarFrobnicatorSkeleton, org_project_bar_frobnicator_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_IMPLEMENT_INTERFACE (TYPE_ORG_PROJECT_BAR_FROBNICATOR, org_project_bar_frobnicator_skeleton_iface_init)) 791s # 791s # #endif 791s # static void 791s # org_project_bar_frobnicator_skeleton_finalize (GObject *object) 791s # { 791s # OrgProjectBarFrobnicatorSkeleton *skeleton = ORG_PROJECT_BAR_FROBNICATOR_SKELETON (object); 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # g_main_context_unref (skeleton->priv->context); 791s # g_mutex_clear (&skeleton->priv->lock); 791s # G_OBJECT_CLASS (org_project_bar_frobnicator_skeleton_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_skeleton_init (OrgProjectBarFrobnicatorSkeleton *skeleton) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # skeleton->priv = org_project_bar_frobnicator_skeleton_get_instance_private (skeleton); 791s # #else 791s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, OrgProjectBarFrobnicatorSkeletonPrivate); 791s # #endif 791s # 791s # g_mutex_init (&skeleton->priv->lock); 791s # skeleton->priv->context = g_main_context_ref_thread_default (); 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_skeleton_class_init (OrgProjectBarFrobnicatorSkeletonClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusInterfaceSkeletonClass *skeleton_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = org_project_bar_frobnicator_skeleton_finalize; 791s # 791s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 791s # skeleton_class->get_info = org_project_bar_frobnicator_skeleton_dbus_interface_get_info; 791s # skeleton_class->get_properties = org_project_bar_frobnicator_skeleton_dbus_interface_get_properties; 791s # skeleton_class->flush = org_project_bar_frobnicator_skeleton_dbus_interface_flush; 791s # skeleton_class->get_vtable = org_project_bar_frobnicator_skeleton_dbus_interface_get_vtable; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (OrgProjectBarFrobnicatorSkeletonPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # org_project_bar_frobnicator_skeleton_iface_init (OrgProjectBarFrobnicatorIface *iface G_GNUC_UNUSED) 791s # { 791s # } 791s # 791s # /** 791s # * org_project_bar_frobnicator_skeleton_new: 791s # * 791s # * Creates a skeleton object for the D-Bus interface org.project.Bar.Frobnicator. 791s # * 791s # * Returns: (transfer full) (type OrgProjectBarFrobnicatorSkeleton): The skeleton object. 791s # */ 791s # OrgProjectBarFrobnicator * 791s # org_project_bar_frobnicator_skeleton_new (void) 791s # { 791s # return ORG_PROJECT_BAR_FROBNICATOR (g_object_new (TYPE_ORG_PROJECT_BAR_FROBNICATOR_SKELETON, NULL)); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ 791s # * Code for interface com.acme.Coyote 791s # * ------------------------------------------------------------------------ 791s # */ 791s # 791s # /** 791s # * SECTION:ComAcmeCoyote 791s # * @title: ComAcmeCoyote 791s # * @short_description: Generated C code for the com.acme.Coyote D-Bus interface 791s # * 791s # * This section contains code for working with the com.acme.Coyote D-Bus interface in C. 791s # */ 791s # 791s # enum 791s # { 791s # _COM_ACME_COYOTE_SURPRISED, 791s # }; 791s # 791s # static unsigned _COM_ACME_COYOTE_SIGNALS[1] = { 0 }; 791s # 791s # /* ---- Introspection data for com.acme.Coyote ---- */ 791s # 791s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_run = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Run", 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "handle-run", 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_sleep = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Sleep", 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "handle-sleep", 791s # FALSE 791s # }; 791s # 791s # static const _ExtendedGDBusMethodInfo _com_acme_coyote_method_info_attack = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Attack", 791s # NULL, 791s # NULL, 791s # NULL 791s # }, 791s # "handle-attack", 791s # FALSE 791s # }; 791s # 791s # static const GDBusMethodInfo * const _com_acme_coyote_method_info_pointers[] = 791s # { 791s # &_com_acme_coyote_method_info_run.parent_struct, 791s # &_com_acme_coyote_method_info_sleep.parent_struct, 791s # &_com_acme_coyote_method_info_attack.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusSignalInfo _com_acme_coyote_signal_info_surprised = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Surprised", 791s # NULL, 791s # NULL 791s # }, 791s # "surprised" 791s # }; 791s # 791s # static const GDBusSignalInfo * const _com_acme_coyote_signal_info_pointers[] = 791s # { 791s # &_com_acme_coyote_signal_info_surprised.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusPropertyInfo _com_acme_coyote_property_info_mood = 791s # { 791s # { 791s # -1, 791s # (gchar *) "Mood", 791s # (gchar *) "s", 791s # G_DBUS_PROPERTY_INFO_FLAGS_READABLE, 791s # NULL 791s # }, 791s # "mood", 791s # FALSE, 791s # TRUE 791s # }; 791s # 791s # static const GDBusPropertyInfo * const _com_acme_coyote_property_info_pointers[] = 791s # { 791s # &_com_acme_coyote_property_info_mood.parent_struct, 791s # NULL 791s # }; 791s # 791s # static const _ExtendedGDBusInterfaceInfo _com_acme_coyote_interface_info = 791s # { 791s # { 791s # -1, 791s # (gchar *) "com.acme.Coyote", 791s # (GDBusMethodInfo **) &_com_acme_coyote_method_info_pointers, 791s # (GDBusSignalInfo **) &_com_acme_coyote_signal_info_pointers, 791s # (GDBusPropertyInfo **) &_com_acme_coyote_property_info_pointers, 791s # NULL 791s # }, 791s # "com-acme-coyote", 791s # }; 791s # 791s # 791s # /** 791s # * com_acme_coyote_interface_info: 791s # * 791s # * Gets a machine-readable description of the com.acme.Coyote D-Bus interface. 791s # * 791s # * Returns: (transfer none): A #GDBusInterfaceInfo. Do not free. 791s # */ 791s # GDBusInterfaceInfo * 791s # com_acme_coyote_interface_info (void) 791s # { 791s # return (GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_override_properties: 791s # * @klass: The class structure for a #GObject derived class. 791s # * @property_id_begin: The property id to assign to the first overridden property. 791s # * 791s # * Overrides all #GObject properties in the #ComAcmeCoyote interface for a concrete class. 791s # * The properties are overridden in the order they are defined. 791s # * 791s # * Returns: The last property id. 791s # */ 791s # guint 791s # com_acme_coyote_override_properties (GObjectClass *klass, guint property_id_begin) 791s # { 791s # g_object_class_override_property (klass, property_id_begin++, "mood"); 791s # return property_id_begin - 1; 791s # } 791s # 791s # 791s # inline static void 791s # com_acme_coyote_signal_marshal_surprised ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # g_cclosure_marshal_VOID__VOID (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # com_acme_coyote_method_marshal_run ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # com_acme_coyote_method_marshal_sleep ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # inline static void 791s # com_acme_coyote_method_marshal_attack ( 791s # GClosure *closure, 791s # GValue *return_value, 791s # unsigned int n_param_values, 791s # const GValue *param_values, 791s # void *invocation_hint, 791s # void *marshal_data) 791s # { 791s # _g_dbus_codegen_marshal_BOOLEAN__OBJECT (closure, 791s # return_value, n_param_values, param_values, invocation_hint, marshal_data); 791s # } 791s # 791s # 791s # /** 791s # * ComAcmeCoyote: 791s # * 791s # * Abstract interface type for the D-Bus interface com.acme.Coyote. 791s # */ 791s # 791s # /** 791s # * ComAcmeCoyoteIface: 791s # * @parent_iface: The parent interface. 791s # * @handle_attack: Handler for the #ComAcmeCoyote::handle-attack signal. 791s # * @handle_run: Handler for the #ComAcmeCoyote::handle-run signal. 791s # * @handle_sleep: Handler for the #ComAcmeCoyote::handle-sleep signal. 791s # * @get_mood: Getter for the #ComAcmeCoyote:mood property. 791s # * @surprised: Handler for the #ComAcmeCoyote::surprised signal. 791s # * 791s # * Virtual table for the D-Bus interface com.acme.Coyote. 791s # */ 791s # 791s # typedef ComAcmeCoyoteIface ComAcmeCoyoteInterface; 791s # G_DEFINE_INTERFACE (ComAcmeCoyote, com_acme_coyote, G_TYPE_OBJECT) 791s # 791s # static void 791s # com_acme_coyote_default_init (ComAcmeCoyoteIface *iface) 791s # { 791s # /* GObject signals for incoming D-Bus method calls: */ 791s # /** 791s # * ComAcmeCoyote::handle-run: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: A #GDBusMethodInvocation. 791s # * 791s # * Signal emitted when a remote caller is invoking the Run() D-Bus method. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # g_signal_new ("handle-run", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_run), 791s # g_signal_accumulator_true_handled, 791s # NULL, 791s # com_acme_coyote_method_marshal_run, 791s # G_TYPE_BOOLEAN, 791s # 1, 791s # G_TYPE_DBUS_METHOD_INVOCATION); 791s # 791s # /** 791s # * ComAcmeCoyote::handle-sleep: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: A #GDBusMethodInvocation. 791s # * 791s # * Signal emitted when a remote caller is invoking the Sleep() D-Bus method. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # g_signal_new ("handle-sleep", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_sleep), 791s # g_signal_accumulator_true_handled, 791s # NULL, 791s # com_acme_coyote_method_marshal_sleep, 791s # G_TYPE_BOOLEAN, 791s # 1, 791s # G_TYPE_DBUS_METHOD_INVOCATION); 791s # 791s # /** 791s # * ComAcmeCoyote::handle-attack: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: A #GDBusMethodInvocation. 791s # * 791s # * Signal emitted when a remote caller is invoking the Attack() D-Bus method. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # g_signal_new ("handle-attack", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, handle_attack), 791s # g_signal_accumulator_true_handled, 791s # NULL, 791s # com_acme_coyote_method_marshal_attack, 791s # G_TYPE_BOOLEAN, 791s # 1, 791s # G_TYPE_DBUS_METHOD_INVOCATION); 791s # 791s # /* GObject signals for received D-Bus signals: */ 791s # /** 791s # * ComAcmeCoyote::surprised: 791s # * @object: A #ComAcmeCoyote. 791s # * 791s # * On the client-side, this signal is emitted whenever the D-Bus signal "Surprised" is received. 791s # * 791s # * 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. 791s # */ 791s # _COM_ACME_COYOTE_SIGNALS[_COM_ACME_COYOTE_SURPRISED] = 791s # g_signal_new ("surprised", 791s # G_TYPE_FROM_INTERFACE (iface), 791s # G_SIGNAL_RUN_LAST, 791s # G_STRUCT_OFFSET (ComAcmeCoyoteIface, surprised), 791s # NULL, 791s # NULL, 791s # com_acme_coyote_signal_marshal_surprised, 791s # G_TYPE_NONE, 791s # 0); 791s # 791s # /* GObject properties for D-Bus properties: */ 791s # /** 791s # * ComAcmeCoyote:mood: 791s # * 791s # * Represents the D-Bus property "Mood". 791s # * 791s # * 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. 791s # */ 791s # g_object_interface_install_property (iface, 791s # g_param_spec_string ("mood", "Mood", "Mood", NULL, G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS)); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_get_mood: (skip) 791s # * @object: A #ComAcmeCoyote. 791s # * 791s # * Gets the value of the "Mood" D-Bus property. 791s # * 791s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 791s # * 791s # * 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. 791s # * 791s # * 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. 791s # */ 791s # const gchar * 791s # com_acme_coyote_get_mood (ComAcmeCoyote *object) 791s # { 791s # g_return_val_if_fail (IS_COM_ACME_COYOTE (object), NULL); 791s # 791s # return COM_ACME_COYOTE_GET_IFACE (object)->get_mood (object); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_dup_mood: (skip) 791s # * @object: A #ComAcmeCoyote. 791s # * 791s # * Gets a copy of the "Mood" D-Bus property. 791s # * 791s # * Since this D-Bus property is readable, it is meaningful to use this function on both the client- and service-side. 791s # * 791s # * Returns: (transfer full) (nullable): The property value or %NULL if the property is not set. The returned value should be freed with g_free(). 791s # */ 791s # gchar * 791s # com_acme_coyote_dup_mood (ComAcmeCoyote *object) 791s # { 791s # gchar *value; 791s # g_object_get (G_OBJECT (object), "mood", &value, NULL); 791s # return value; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_set_mood: (skip) 791s # * @object: A #ComAcmeCoyote. 791s # * @value: The value to set. 791s # * 791s # * Sets the "Mood" D-Bus property to @value. 791s # * 791s # * Since this D-Bus property is not writable, it is only meaningful to use this function on the service-side. 791s # */ 791s # void 791s # com_acme_coyote_set_mood (ComAcmeCoyote *object, const gchar *value) 791s # { 791s # g_object_set (G_OBJECT (object), "mood", value, NULL); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_emit_surprised: 791s # * @object: A #ComAcmeCoyote. 791s # * 791s # * Emits the "Surprised" D-Bus signal. 791s # */ 791s # void 791s # com_acme_coyote_emit_surprised ( 791s # ComAcmeCoyote *object) 791s # { 791s # g_signal_emit (object, _COM_ACME_COYOTE_SIGNALS[_COM_ACME_COYOTE_SURPRISED], 0); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_run: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously invokes the Run() D-Bus method on @proxy. 791s # * 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()). 791s # * You can then call com_acme_coyote_call_run_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_call_run_sync() for the synchronous, blocking version of this method. 791s # */ 791s # void 791s # com_acme_coyote_call_run ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 791s # "Run", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # callback, 791s # user_data); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_run_finish: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_run(). 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Finishes an operation started with com_acme_coyote_call_run(). 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_run_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_run_sync: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Synchronously invokes the Run() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_call_run() for the asynchronous version of this method. 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_run_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 791s # "Run", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_sleep: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously invokes the Sleep() D-Bus method on @proxy. 791s # * 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()). 791s # * You can then call com_acme_coyote_call_sleep_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_call_sleep_sync() for the synchronous, blocking version of this method. 791s # */ 791s # void 791s # com_acme_coyote_call_sleep ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 791s # "Sleep", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # callback, 791s # user_data); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_sleep_finish: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_sleep(). 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Finishes an operation started with com_acme_coyote_call_sleep(). 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_sleep_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_sleep_sync: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Synchronously invokes the Sleep() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_call_sleep() for the asynchronous version of this method. 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_sleep_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 791s # "Sleep", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_attack: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied or %NULL. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously invokes the Attack() D-Bus method on @proxy. 791s # * 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()). 791s # * You can then call com_acme_coyote_call_attack_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_call_attack_sync() for the synchronous, blocking version of this method. 791s # */ 791s # void 791s # com_acme_coyote_call_attack ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # g_dbus_proxy_call (G_DBUS_PROXY (proxy), 791s # "Attack", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # callback, 791s # user_data); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_attack_finish: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_call_attack(). 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Finishes an operation started with com_acme_coyote_call_attack(). 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_attack_finish ( 791s # ComAcmeCoyote *proxy, 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_finish (G_DBUS_PROXY (proxy), res, error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_call_attack_sync: 791s # * @proxy: A #ComAcmeCoyoteProxy. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL. 791s # * 791s # * Synchronously invokes the Attack() D-Bus method on @proxy. The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_call_attack() for the asynchronous version of this method. 791s # * 791s # * Returns: (skip): %TRUE if the call succeeded, %FALSE if @error is set. 791s # */ 791s # gboolean 791s # com_acme_coyote_call_attack_sync ( 791s # ComAcmeCoyote *proxy, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GVariant *_ret; 791s # _ret = g_dbus_proxy_call_sync (G_DBUS_PROXY (proxy), 791s # "Attack", 791s # g_variant_new ("()"), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # cancellable, 791s # error); 791s # if (_ret == NULL) 791s # goto _out; 791s # g_variant_get (_ret, 791s # "()"); 791s # g_variant_unref (_ret); 791s # _out: 791s # return _ret != NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_complete_run: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: (transfer full): A #GDBusMethodInvocation. 791s # * 791s # * 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. 791s # * 791s # * This method will free @invocation, you cannot use it afterwards. 791s # */ 791s # void 791s # com_acme_coyote_complete_run ( 791s # ComAcmeCoyote *object G_GNUC_UNUSED, 791s # GDBusMethodInvocation *invocation) 791s # { 791s # g_dbus_method_invocation_return_value (invocation, 791s # g_variant_new ("()")); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_complete_sleep: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: (transfer full): A #GDBusMethodInvocation. 791s # * 791s # * 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. 791s # * 791s # * This method will free @invocation, you cannot use it afterwards. 791s # */ 791s # void 791s # com_acme_coyote_complete_sleep ( 791s # ComAcmeCoyote *object G_GNUC_UNUSED, 791s # GDBusMethodInvocation *invocation) 791s # { 791s # g_dbus_method_invocation_return_value (invocation, 791s # g_variant_new ("()")); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_complete_attack: 791s # * @object: A #ComAcmeCoyote. 791s # * @invocation: (transfer full): A #GDBusMethodInvocation. 791s # * 791s # * 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. 791s # * 791s # * This method will free @invocation, you cannot use it afterwards. 791s # */ 791s # void 791s # com_acme_coyote_complete_attack ( 791s # ComAcmeCoyote *object G_GNUC_UNUSED, 791s # GDBusMethodInvocation *invocation) 791s # { 791s # g_dbus_method_invocation_return_value (invocation, 791s # g_variant_new ("()")); 791s # } 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * ComAcmeCoyoteProxy: 791s # * 791s # * The #ComAcmeCoyoteProxy structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * ComAcmeCoyoteProxyClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #ComAcmeCoyoteProxy. 791s # */ 791s # 791s # struct _ComAcmeCoyoteProxyPrivate 791s # { 791s # GData *qdata; 791s # }; 791s # 791s # static void com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY, 791s # G_ADD_PRIVATE (ComAcmeCoyoteProxy) 791s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteProxy, com_acme_coyote_proxy, G_TYPE_DBUS_PROXY, 791s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_proxy_iface_init)) 791s # 791s # #endif 791s # static void 791s # com_acme_coyote_proxy_finalize (GObject *object) 791s # { 791s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object); 791s # g_datalist_clear (&proxy->priv->qdata); 791s # G_OBJECT_CLASS (com_acme_coyote_proxy_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_get_property (GObject *object, 791s # guint prop_id, 791s # GValue *value, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # GVariant *variant; 791s # g_assert (prop_id != 0 && prop_id - 1 < 1); 791s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 791s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (object), info->parent_struct.name); 791s # if (info->use_gvariant) 791s # { 791s # g_value_set_variant (value, variant); 791s # } 791s # else 791s # { 791s # if (variant != NULL) 791s # g_dbus_gvariant_to_gvalue (variant, value); 791s # } 791s # if (variant != NULL) 791s # g_variant_unref (variant); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_set_property_cb (GDBusProxy *proxy, 791s # GAsyncResult *res, 791s # gpointer user_data) 791s # { 791s # const _ExtendedGDBusPropertyInfo *info = user_data; 791s # GError *error; 791s # GVariant *_ret; 791s # error = NULL; 791s # _ret = g_dbus_proxy_call_finish (proxy, res, &error); 791s # if (!_ret) 791s # { 791s # g_warning ("Error setting property '%s' on interface com.acme.Coyote: %s (%s, %d)", 791s # info->parent_struct.name, 791s # error->message, g_quark_to_string (error->domain), error->code); 791s # g_error_free (error); 791s # } 791s # else 791s # { 791s # g_variant_unref (_ret); 791s # } 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_set_property (GObject *object, 791s # guint prop_id, 791s # const GValue *value, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # GVariant *variant; 791s # g_assert (prop_id != 0 && prop_id - 1 < 1); 791s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 791s # variant = g_dbus_gvalue_to_gvariant (value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_dbus_proxy_call (G_DBUS_PROXY (object), 791s # "org.freedesktop.DBus.Properties.Set", 791s # g_variant_new ("(ssv)", "com.acme.Coyote", info->parent_struct.name, variant), 791s # G_DBUS_CALL_FLAGS_NONE, 791s # -1, 791s # NULL, (GAsyncReadyCallback) com_acme_coyote_proxy_set_property_cb, (GDBusPropertyInfo *) &info->parent_struct); 791s # g_variant_unref (variant); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_g_signal (GDBusProxy *proxy, 791s # const gchar *sender_name G_GNUC_UNUSED, 791s # const gchar *signal_name, 791s # GVariant *parameters) 791s # { 791s # _ExtendedGDBusSignalInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # gsize n; 791s # guint signal_id; 791s # info = (_ExtendedGDBusSignalInfo *) g_dbus_interface_info_lookup_signal ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, signal_name); 791s # if (info == NULL) 791s # return; 791s # num_params = g_variant_n_children (parameters); 791s # paramv = g_new0 (GValue, num_params + 1); 791s # g_value_init (¶mv[0], TYPE_COM_ACME_COYOTE); 791s # g_value_set_object (¶mv[0], proxy); 791s # g_variant_iter_init (&iter, parameters); 791s # n = 1; 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.args[n - 1]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE); 791s # g_signal_emitv (paramv, signal_id, 0, NULL); 791s # for (n = 0; n < num_params + 1; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_g_properties_changed (GDBusProxy *_proxy, 791s # GVariant *changed_properties, 791s # const gchar *const *invalidated_properties) 791s # { 791s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (_proxy); 791s # guint n; 791s # const gchar *key; 791s # GVariantIter *iter; 791s # _ExtendedGDBusPropertyInfo *info; 791s # g_variant_get (changed_properties, "a{sv}", &iter); 791s # while (g_variant_iter_next (iter, "{&sv}", &key, NULL)) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, key); 791s # g_datalist_remove_data (&proxy->priv->qdata, key); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # g_variant_iter_free (iter); 791s # for (n = 0; invalidated_properties[n] != NULL; n++) 791s # { 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, invalidated_properties[n]); 791s # g_datalist_remove_data (&proxy->priv->qdata, invalidated_properties[n]); 791s # if (info != NULL) 791s # g_object_notify (G_OBJECT (proxy), info->hyphen_name); 791s # } 791s # } 791s # 791s # static const gchar * 791s # com_acme_coyote_proxy_get_mood (ComAcmeCoyote *object) 791s # { 791s # ComAcmeCoyoteProxy *proxy = COM_ACME_COYOTE_PROXY (object); 791s # GVariant *variant; 791s # const gchar *value = NULL; 791s # variant = g_dbus_proxy_get_cached_property (G_DBUS_PROXY (proxy), "Mood"); 791s # if (variant != NULL) 791s # { 791s # value = g_variant_get_string (variant, NULL); 791s # g_variant_unref (variant); 791s # } 791s # return value; 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_init (ComAcmeCoyoteProxy *proxy) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # proxy->priv = com_acme_coyote_proxy_get_instance_private (proxy); 791s # #else 791s # proxy->priv = G_TYPE_INSTANCE_GET_PRIVATE (proxy, TYPE_COM_ACME_COYOTE_PROXY, ComAcmeCoyoteProxyPrivate); 791s # #endif 791s # 791s # g_dbus_proxy_set_interface_info (G_DBUS_PROXY (proxy), com_acme_coyote_interface_info ()); 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_class_init (ComAcmeCoyoteProxyClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusProxyClass *proxy_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = com_acme_coyote_proxy_finalize; 791s # gobject_class->get_property = com_acme_coyote_proxy_get_property; 791s # gobject_class->set_property = com_acme_coyote_proxy_set_property; 791s # 791s # proxy_class = G_DBUS_PROXY_CLASS (klass); 791s # proxy_class->g_signal = com_acme_coyote_proxy_g_signal; 791s # proxy_class->g_properties_changed = com_acme_coyote_proxy_g_properties_changed; 791s # 791s # com_acme_coyote_override_properties (gobject_class, 1); 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (ComAcmeCoyoteProxyPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # com_acme_coyote_proxy_iface_init (ComAcmeCoyoteIface *iface) 791s # { 791s # iface->get_mood = com_acme_coyote_proxy_get_mood; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Asynchronously creates a proxy for the D-Bus interface com.acme.Coyote. See g_dbus_proxy_new() for more details. 791s # * 791s # * 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()). 791s # * You can then call com_acme_coyote_proxy_new_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_proxy_new_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # com_acme_coyote_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with com_acme_coyote_proxy_new(). 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return COM_ACME_COYOTE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_sync: 791s # * @connection: A #GDBusConnection. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: (nullable): A bus name (well-known or unique) or %NULL if @connection is not a message bus connection. 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Synchronously creates a proxy for the D-Bus interface com.acme.Coyote. See g_dbus_proxy_new_sync() for more details. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_proxy_new() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return COM_ACME_COYOTE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_for_bus: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @callback: A #GAsyncReadyCallback to call when the request is satisfied. 791s # * @user_data: User data to pass to @callback. 791s # * 791s # * Like com_acme_coyote_proxy_new() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * 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()). 791s # * You can then call com_acme_coyote_proxy_new_for_bus_finish() to get the result of the operation. 791s # * 791s # * See com_acme_coyote_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor. 791s # */ 791s # void 791s # com_acme_coyote_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data) 791s # { 791s # 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); 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_for_bus_finish: 791s # * @res: The #GAsyncResult obtained from the #GAsyncReadyCallback passed to com_acme_coyote_proxy_new_for_bus(). 791s # * @error: Return location for error or %NULL 791s # * 791s # * Finishes an operation started with com_acme_coyote_proxy_new_for_bus(). 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error) 791s # { 791s # GObject *ret; 791s # GObject *source_object; 791s # source_object = g_async_result_get_source_object (res); 791s # ret = g_async_initable_new_finish (G_ASYNC_INITABLE (source_object), res, error); 791s # g_object_unref (source_object); 791s # if (ret != NULL) 791s # return COM_ACME_COYOTE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_proxy_new_for_bus_sync: 791s # * @bus_type: A #GBusType. 791s # * @flags: Flags from the #GDBusProxyFlags enumeration. 791s # * @name: A bus name (well-known or unique). 791s # * @object_path: An object path. 791s # * @cancellable: (nullable): A #GCancellable or %NULL. 791s # * @error: Return location for error or %NULL 791s # * 791s # * Like com_acme_coyote_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection. 791s # * 791s # * The calling thread is blocked until a reply is received. 791s # * 791s # * See com_acme_coyote_proxy_new_for_bus() for the asynchronous version of this constructor. 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteProxy): The constructed proxy object or %NULL if @error is set. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error) 791s # { 791s # GInitable *ret; 791s # 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); 791s # if (ret != NULL) 791s # return COM_ACME_COYOTE (ret); 791s # else 791s # return NULL; 791s # } 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # 791s # /** 791s # * ComAcmeCoyoteSkeleton: 791s # * 791s # * The #ComAcmeCoyoteSkeleton structure contains only private data and should only be accessed using the provided API. 791s # */ 791s # 791s # /** 791s # * ComAcmeCoyoteSkeletonClass: 791s # * @parent_class: The parent class. 791s # * 791s # * Class structure for #ComAcmeCoyoteSkeleton. 791s # */ 791s # 791s # struct _ComAcmeCoyoteSkeletonPrivate 791s # { 791s # GValue *properties; 791s # GList *changed_properties; 791s # GSource *changed_properties_idle_source; 791s # GMainContext *context; 791s # GMutex lock; 791s # }; 791s # 791s # static void 791s # _com_acme_coyote_skeleton_handle_method_call ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name, 791s # const gchar *method_name, 791s # GVariant *parameters, 791s # GDBusMethodInvocation *invocation, 791s # gpointer user_data) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 791s # _ExtendedGDBusMethodInfo *info; 791s # GVariantIter iter; 791s # GVariant *child; 791s # GValue *paramv; 791s # gsize num_params; 791s # guint num_extra; 791s # gsize n; 791s # guint signal_id; 791s # GValue return_value = G_VALUE_INIT; 791s # info = (_ExtendedGDBusMethodInfo *) g_dbus_method_invocation_get_method_info (invocation); 791s # g_assert (info != NULL); 791s # num_params = g_variant_n_children (parameters); 791s # num_extra = info->pass_fdlist ? 3 : 2; paramv = g_new0 (GValue, num_params + num_extra); 791s # n = 0; 791s # g_value_init (¶mv[n], TYPE_COM_ACME_COYOTE); 791s # g_value_set_object (¶mv[n++], skeleton); 791s # g_value_init (¶mv[n], G_TYPE_DBUS_METHOD_INVOCATION); 791s # g_value_set_object (¶mv[n++], invocation); 791s # if (info->pass_fdlist) 791s # { 791s # #ifdef G_OS_UNIX 791s # g_value_init (¶mv[n], G_TYPE_UNIX_FD_LIST); 791s # g_value_set_object (¶mv[n++], g_dbus_message_get_unix_fd_list (g_dbus_method_invocation_get_message (invocation))); 791s # #else 791s # g_assert_not_reached (); 791s # #endif 791s # } 791s # g_variant_iter_init (&iter, parameters); 791s # while ((child = g_variant_iter_next_value (&iter)) != NULL) 791s # { 791s # _ExtendedGDBusArgInfo *arg_info = (_ExtendedGDBusArgInfo *) info->parent_struct.in_args[n - num_extra]; 791s # if (arg_info->use_gvariant) 791s # { 791s # g_value_init (¶mv[n], G_TYPE_VARIANT); 791s # g_value_set_variant (¶mv[n], child); 791s # n++; 791s # } 791s # else 791s # g_dbus_gvariant_to_gvalue (child, ¶mv[n++]); 791s # g_variant_unref (child); 791s # } 791s # signal_id = g_signal_lookup (info->signal_name, TYPE_COM_ACME_COYOTE); 791s # g_value_init (&return_value, G_TYPE_BOOLEAN); 791s # g_signal_emitv (paramv, signal_id, 0, &return_value); 791s # if (!g_value_get_boolean (&return_value)) 791s # 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); 791s # g_value_unset (&return_value); 791s # for (n = 0; n < num_params + num_extra; n++) 791s # g_value_unset (¶mv[n]); 791s # g_free (paramv); 791s # } 791s # 791s # static GVariant * 791s # _com_acme_coyote_skeleton_handle_get_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # GVariant *ret; 791s # ret = NULL; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # g_value_init (&value, pspec->value_type); 791s # g_object_get_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # ret = g_dbus_gvalue_to_gvariant (&value, G_VARIANT_TYPE (info->parent_struct.signature)); 791s # g_value_unset (&value); 791s # } 791s # return ret; 791s # } 791s # 791s # static gboolean 791s # _com_acme_coyote_skeleton_handle_set_property ( 791s # GDBusConnection *connection G_GNUC_UNUSED, 791s # const gchar *sender G_GNUC_UNUSED, 791s # const gchar *object_path G_GNUC_UNUSED, 791s # const gchar *interface_name G_GNUC_UNUSED, 791s # const gchar *property_name, 791s # GVariant *variant, 791s # GError **error, 791s # gpointer user_data) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 791s # GValue value = G_VALUE_INIT; 791s # GParamSpec *pspec; 791s # _ExtendedGDBusPropertyInfo *info; 791s # gboolean ret; 791s # ret = FALSE; 791s # info = (_ExtendedGDBusPropertyInfo *) g_dbus_interface_info_lookup_property ((GDBusInterfaceInfo *) &_com_acme_coyote_interface_info.parent_struct, property_name); 791s # g_assert (info != NULL); 791s # pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (skeleton), info->hyphen_name); 791s # if (pspec == NULL) 791s # { 791s # g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "No property with name %s", property_name); 791s # } 791s # else 791s # { 791s # if (info->use_gvariant) 791s # g_value_set_variant (&value, variant); 791s # else 791s # g_dbus_gvariant_to_gvalue (variant, &value); 791s # g_object_set_property (G_OBJECT (skeleton), info->hyphen_name, &value); 791s # g_value_unset (&value); 791s # ret = TRUE; 791s # } 791s # return ret; 791s # } 791s # 791s # static const GDBusInterfaceVTable _com_acme_coyote_skeleton_vtable = 791s # { 791s # _com_acme_coyote_skeleton_handle_method_call, 791s # _com_acme_coyote_skeleton_handle_get_property, 791s # _com_acme_coyote_skeleton_handle_set_property, 791s # {NULL} 791s # }; 791s # 791s # static GDBusInterfaceInfo * 791s # com_acme_coyote_skeleton_dbus_interface_get_info (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return com_acme_coyote_interface_info (); 791s # } 791s # 791s # static GDBusInterfaceVTable * 791s # com_acme_coyote_skeleton_dbus_interface_get_vtable (GDBusInterfaceSkeleton *skeleton G_GNUC_UNUSED) 791s # { 791s # return (GDBusInterfaceVTable *) &_com_acme_coyote_skeleton_vtable; 791s # } 791s # 791s # static GVariant * 791s # com_acme_coyote_skeleton_dbus_interface_get_properties (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton); 791s # 791s # GVariantBuilder builder; 791s # guint n; 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #else 791s # g_variant_builder_init(&builder, G_VARIANT_TYPE ("a{sv}")); 791s # #endif 791s # if (_com_acme_coyote_interface_info.parent_struct.properties == NULL) 791s # goto out; 791s # for (n = 0; _com_acme_coyote_interface_info.parent_struct.properties[n] != NULL; n++) 791s # { 791s # GDBusPropertyInfo *info = _com_acme_coyote_interface_info.parent_struct.properties[n]; 791s # if (info->flags & G_DBUS_PROPERTY_INFO_FLAGS_READABLE) 791s # { 791s # GVariant *value; 791s # 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); 791s # if (value != NULL) 791s # { 791s # g_variant_take_ref (value); 791s # g_variant_builder_add (&builder, "{sv}", info->name, value); 791s # g_variant_unref (value); 791s # } 791s # } 791s # } 791s # out: 791s # return g_variant_builder_end (&builder); 791s # } 791s # 791s # static gboolean _com_acme_coyote_emit_changed (gpointer user_data); 791s # 791s # static void 791s # com_acme_coyote_skeleton_dbus_interface_flush (GDBusInterfaceSkeleton *_skeleton) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (_skeleton); 791s # gboolean emit_changed = FALSE; 791s # 791s # g_mutex_lock (&skeleton->priv->lock); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # { 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # skeleton->priv->changed_properties_idle_source = NULL; 791s # emit_changed = TRUE; 791s # } 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # 791s # if (emit_changed) 791s # _com_acme_coyote_emit_changed (skeleton); 791s # } 791s # 791s # static void 791s # _com_acme_coyote_on_signal_surprised ( 791s # ComAcmeCoyote *object) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # 791s # GList *connections, *l; 791s # GVariant *signal_variant; 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # 791s # signal_variant = g_variant_ref_sink (g_variant_new ("()")); 791s # for (l = connections; l != NULL; l = l->next) 791s # { 791s # GDBusConnection *connection = l->data; 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), "com.acme.Coyote", "Surprised", 791s # signal_variant, NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # 791s # static void com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_ADD_PRIVATE (ComAcmeCoyoteSkeleton) 791s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init)) 791s # 791s # #else 791s # G_DEFINE_TYPE_WITH_CODE (ComAcmeCoyoteSkeleton, com_acme_coyote_skeleton, G_TYPE_DBUS_INTERFACE_SKELETON, 791s # G_IMPLEMENT_INTERFACE (TYPE_COM_ACME_COYOTE, com_acme_coyote_skeleton_iface_init)) 791s # 791s # #endif 791s # static void 791s # com_acme_coyote_skeleton_finalize (GObject *object) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # guint n; 791s # for (n = 0; n < 1; n++) 791s # g_value_unset (&skeleton->priv->properties[n]); 791s # g_free (skeleton->priv->properties); 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # if (skeleton->priv->changed_properties_idle_source != NULL) 791s # g_source_destroy (skeleton->priv->changed_properties_idle_source); 791s # g_main_context_unref (skeleton->priv->context); 791s # g_mutex_clear (&skeleton->priv->lock); 791s # G_OBJECT_CLASS (com_acme_coyote_skeleton_parent_class)->finalize (object); 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_get_property (GObject *object, 791s # guint prop_id, 791s # GValue *value, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # g_assert (prop_id != 0 && prop_id - 1 < 1); 791s # g_mutex_lock (&skeleton->priv->lock); 791s # g_value_copy (&skeleton->priv->properties[prop_id - 1], value); 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # } 791s # 791s # static gboolean 791s # _com_acme_coyote_emit_changed (gpointer user_data) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (user_data); 791s # GList *l; 791s # GVariantBuilder builder; 791s # GVariantBuilder invalidated_builder; 791s # guint num_changes; 791s # 791s # g_mutex_lock (&skeleton->priv->lock); 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_84 791s # g_variant_builder_init_static (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # g_variant_builder_init_static (&invalidated_builder, G_VARIANT_TYPE ("as")); 791s # #else 791s # g_variant_builder_init (&builder, G_VARIANT_TYPE ("a{sv}")); 791s # g_variant_builder_init (&invalidated_builder, G_VARIANT_TYPE ("as")); 791s # #endif 791s # for (l = skeleton->priv->changed_properties, num_changes = 0; l != NULL; l = l->next) 791s # { 791s # ChangedProperty *cp = l->data; 791s # GVariant *variant; 791s # const GValue *cur_value; 791s # 791s # cur_value = &skeleton->priv->properties[cp->prop_id - 1]; 791s # if (!_g_value_equal (cur_value, &cp->orig_value)) 791s # { 791s # variant = g_dbus_gvalue_to_gvariant (cur_value, G_VARIANT_TYPE (cp->info->parent_struct.signature)); 791s # g_variant_builder_add (&builder, "{sv}", cp->info->parent_struct.name, variant); 791s # g_variant_unref (variant); 791s # num_changes++; 791s # } 791s # } 791s # if (num_changes > 0) 791s # { 791s # GList *connections, *ll; 791s # GVariant *signal_variant; 791s # signal_variant = g_variant_ref_sink (g_variant_new ("(sa{sv}as)", "com.acme.Coyote", 791s # &builder, &invalidated_builder)); 791s # connections = g_dbus_interface_skeleton_get_connections (G_DBUS_INTERFACE_SKELETON (skeleton)); 791s # for (ll = connections; ll != NULL; ll = ll->next) 791s # { 791s # GDBusConnection *connection = ll->data; 791s # 791s # g_dbus_connection_emit_signal (connection, 791s # NULL, g_dbus_interface_skeleton_get_object_path (G_DBUS_INTERFACE_SKELETON (skeleton)), 791s # "org.freedesktop.DBus.Properties", 791s # "PropertiesChanged", 791s # signal_variant, 791s # NULL); 791s # } 791s # g_variant_unref (signal_variant); 791s # g_list_free_full (connections, g_object_unref); 791s # } 791s # else 791s # { 791s # g_variant_builder_clear (&builder); 791s # g_variant_builder_clear (&invalidated_builder); 791s # } 791s # g_list_free_full (skeleton->priv->changed_properties, (GDestroyNotify) _changed_property_free); 791s # skeleton->priv->changed_properties = NULL; 791s # skeleton->priv->changed_properties_idle_source = NULL; 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # return FALSE; 791s # } 791s # 791s # static void 791s # _com_acme_coyote_schedule_emit_changed (ComAcmeCoyoteSkeleton *skeleton, const _ExtendedGDBusPropertyInfo *info, guint prop_id, const GValue *orig_value) 791s # { 791s # ChangedProperty *cp; 791s # GList *l; 791s # cp = NULL; 791s # for (l = skeleton->priv->changed_properties; l != NULL; l = l->next) 791s # { 791s # ChangedProperty *i_cp = l->data; 791s # if (i_cp->info == info) 791s # { 791s # cp = i_cp; 791s # break; 791s # } 791s # } 791s # if (cp == NULL) 791s # { 791s # cp = g_new0 (ChangedProperty, 1); 791s # cp->prop_id = prop_id; 791s # cp->info = info; 791s # skeleton->priv->changed_properties = g_list_prepend (skeleton->priv->changed_properties, cp); 791s # g_value_init (&cp->orig_value, G_VALUE_TYPE (orig_value)); 791s # g_value_copy (orig_value, &cp->orig_value); 791s # } 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_notify (GObject *object, 791s # GParamSpec *pspec G_GNUC_UNUSED) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # g_mutex_lock (&skeleton->priv->lock); 791s # if (skeleton->priv->changed_properties != NULL && 791s # skeleton->priv->changed_properties_idle_source == NULL) 791s # { 791s # skeleton->priv->changed_properties_idle_source = g_idle_source_new (); 791s # g_source_set_priority (skeleton->priv->changed_properties_idle_source, G_PRIORITY_DEFAULT); 791s # g_source_set_callback (skeleton->priv->changed_properties_idle_source, _com_acme_coyote_emit_changed, g_object_ref (skeleton), (GDestroyNotify) g_object_unref); 791s # g_source_set_name (skeleton->priv->changed_properties_idle_source, "[generated] _com_acme_coyote_emit_changed"); 791s # g_source_attach (skeleton->priv->changed_properties_idle_source, skeleton->priv->context); 791s # g_source_unref (skeleton->priv->changed_properties_idle_source); 791s # } 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_set_property (GObject *object, 791s # guint prop_id, 791s # const GValue *value, 791s # GParamSpec *pspec) 791s # { 791s # const _ExtendedGDBusPropertyInfo *info; 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # g_assert (prop_id != 0 && prop_id - 1 < 1); 791s # info = (const _ExtendedGDBusPropertyInfo *) _com_acme_coyote_property_info_pointers[prop_id - 1]; 791s # g_mutex_lock (&skeleton->priv->lock); 791s # g_object_freeze_notify (object); 791s # if (!_g_value_equal (value, &skeleton->priv->properties[prop_id - 1])) 791s # { 791s # if (g_dbus_interface_skeleton_get_connection (G_DBUS_INTERFACE_SKELETON (skeleton)) != NULL && 791s # info->emits_changed_signal) 791s # _com_acme_coyote_schedule_emit_changed (skeleton, info, prop_id, &skeleton->priv->properties[prop_id - 1]); 791s # g_value_copy (value, &skeleton->priv->properties[prop_id - 1]); 791s # g_object_notify_by_pspec (object, pspec); 791s # } 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # g_object_thaw_notify (object); 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_init (ComAcmeCoyoteSkeleton *skeleton) 791s # { 791s # #if GLIB_VERSION_MAX_ALLOWED >= GLIB_VERSION_2_38 791s # skeleton->priv = com_acme_coyote_skeleton_get_instance_private (skeleton); 791s # #else 791s # skeleton->priv = G_TYPE_INSTANCE_GET_PRIVATE (skeleton, TYPE_COM_ACME_COYOTE_SKELETON, ComAcmeCoyoteSkeletonPrivate); 791s # #endif 791s # 791s # g_mutex_init (&skeleton->priv->lock); 791s # skeleton->priv->context = g_main_context_ref_thread_default (); 791s # skeleton->priv->properties = g_new0 (GValue, 1); 791s # g_value_init (&skeleton->priv->properties[0], G_TYPE_STRING); 791s # } 791s # 791s # static const gchar * 791s # com_acme_coyote_skeleton_get_mood (ComAcmeCoyote *object) 791s # { 791s # ComAcmeCoyoteSkeleton *skeleton = COM_ACME_COYOTE_SKELETON (object); 791s # const gchar *value; 791s # g_mutex_lock (&skeleton->priv->lock); 791s # value = g_marshal_value_peek_string (&(skeleton->priv->properties[0])); 791s # g_mutex_unlock (&skeleton->priv->lock); 791s # return value; 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_class_init (ComAcmeCoyoteSkeletonClass *klass) 791s # { 791s # GObjectClass *gobject_class; 791s # GDBusInterfaceSkeletonClass *skeleton_class; 791s # 791s # gobject_class = G_OBJECT_CLASS (klass); 791s # gobject_class->finalize = com_acme_coyote_skeleton_finalize; 791s # gobject_class->get_property = com_acme_coyote_skeleton_get_property; 791s # gobject_class->set_property = com_acme_coyote_skeleton_set_property; 791s # gobject_class->notify = com_acme_coyote_skeleton_notify; 791s # 791s # 791s # com_acme_coyote_override_properties (gobject_class, 1); 791s # 791s # skeleton_class = G_DBUS_INTERFACE_SKELETON_CLASS (klass); 791s # skeleton_class->get_info = com_acme_coyote_skeleton_dbus_interface_get_info; 791s # skeleton_class->get_properties = com_acme_coyote_skeleton_dbus_interface_get_properties; 791s # skeleton_class->flush = com_acme_coyote_skeleton_dbus_interface_flush; 791s # skeleton_class->get_vtable = com_acme_coyote_skeleton_dbus_interface_get_vtable; 791s # 791s # #if GLIB_VERSION_MAX_ALLOWED < GLIB_VERSION_2_38 791s # g_type_class_add_private (klass, sizeof (ComAcmeCoyoteSkeletonPrivate)); 791s # #endif 791s # } 791s # 791s # static void 791s # com_acme_coyote_skeleton_iface_init (ComAcmeCoyoteIface *iface) 791s # { 791s # iface->surprised = _com_acme_coyote_on_signal_surprised; 791s # iface->get_mood = com_acme_coyote_skeleton_get_mood; 791s # } 791s # 791s # /** 791s # * com_acme_coyote_skeleton_new: 791s # * 791s # * Creates a skeleton object for the D-Bus interface com.acme.Coyote. 791s # * 791s # * Returns: (transfer full) (type ComAcmeCoyoteSkeleton): The skeleton object. 791s # */ 791s # ComAcmeCoyote * 791s # com_acme_coyote_skeleton_new (void) 791s # { 791s # return COM_ACME_COYOTE (g_object_new (TYPE_COM_ACME_COYOTE_SKELETON, NULL)); 791s # } 791s # Error: 791s ok 39 __main__.TestCodegen.test_unix_fd_types_and_annotations 791s # gdbus-codegen: /usr/bin/gdbus-codegen 791s # tmpdir: /tmp/tmpt_dcjtbr 791s # /tmp/tmpt_dcjtbr/tmp3ciqozv7.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpt_dcjtbr/tmp3ciqozv7.xml', '--output', '-', '--header'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # /* Declarations for FDPassing */ 791s # 791s # #define TYPE_FDPASSING (fdpassing_get_type ()) 791s # #define FDPASSING(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING, FDPassing)) 791s # #define IS_FDPASSING(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING)) 791s # #define FDPASSING_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_FDPASSING, FDPassingIface)) 791s # 791s # struct _FDPassing; 791s # typedef struct _FDPassing FDPassing; 791s # typedef struct _FDPassingIface FDPassingIface; 791s # 791s # struct _FDPassingIface 791s # { 791s # GTypeInterface parent_iface; 791s # 791s # gboolean (*handle_hello_fd) ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list, 791s # const gchar *arg_greeting); 791s # 791s # gboolean (*handle_no_annotation) ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GVariant *arg_greeting, 791s # const gchar *arg_greeting_locale); 791s # 791s # gboolean (*handle_no_annotation_nested) ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GVariant *arg_files); 791s # 791s # }; 791s # 791s # GType fdpassing_get_type (void) G_GNUC_CONST; 791s # 791s # GDBusInterfaceInfo *fdpassing_interface_info (void); 791s # guint fdpassing_override_properties (GObjectClass *klass, guint property_id_begin); 791s # 791s # 791s # /* D-Bus method call completion functions: */ 791s # void fdpassing_complete_hello_fd ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list, 791s # const gchar *response); 791s # 791s # void fdpassing_complete_no_annotation ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GVariant *response, 791s # const gchar *response_locale); 791s # 791s # void fdpassing_complete_no_annotation_nested ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # 791s # 791s # /* D-Bus method calls: */ 791s # void fdpassing_call_hello_fd ( 791s # FDPassing *proxy, 791s # const gchar *arg_greeting, 791s # GUnixFDList *fd_list, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean fdpassing_call_hello_fd_finish ( 791s # FDPassing *proxy, 791s # gchar **out_response, 791s # GUnixFDList **out_fd_list, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean fdpassing_call_hello_fd_sync ( 791s # FDPassing *proxy, 791s # const gchar *arg_greeting, 791s # GUnixFDList *fd_list, 791s # gchar **out_response, 791s # GUnixFDList **out_fd_list, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void fdpassing_call_no_annotation ( 791s # FDPassing *proxy, 791s # GVariant *arg_greeting, 791s # const gchar *arg_greeting_locale, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean fdpassing_call_no_annotation_finish ( 791s # FDPassing *proxy, 791s # GVariant **out_response, 791s # gchar **out_response_locale, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean fdpassing_call_no_annotation_sync ( 791s # FDPassing *proxy, 791s # GVariant *arg_greeting, 791s # const gchar *arg_greeting_locale, 791s # GVariant **out_response, 791s # gchar **out_response_locale, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void fdpassing_call_no_annotation_nested ( 791s # FDPassing *proxy, 791s # GVariant *arg_files, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean fdpassing_call_no_annotation_nested_finish ( 791s # FDPassing *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean fdpassing_call_no_annotation_nested_sync ( 791s # FDPassing *proxy, 791s # GVariant *arg_files, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_FDPASSING_PROXY (fdpassing_proxy_get_type ()) 791s # #define FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_PROXY, FDPassingProxy)) 791s # #define FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 791s # #define FDPASSING_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 791s # #define IS_FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_PROXY)) 791s # #define IS_FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_PROXY)) 791s # 791s # typedef struct _FDPassingProxy FDPassingProxy; 791s # typedef struct _FDPassingProxyClass FDPassingProxyClass; 791s # typedef struct _FDPassingProxyPrivate FDPassingProxyPrivate; 791s # 791s # struct _FDPassingProxy 791s # { 791s # /*< private >*/ 791s # GDBusProxy parent_instance; 791s # FDPassingProxyPrivate *priv; 791s # }; 791s # 791s # struct _FDPassingProxyClass 791s # { 791s # GDBusProxyClass parent_class; 791s # }; 791s # 791s # GType fdpassing_proxy_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingProxy, g_object_unref) 791s # #endif 791s # 791s # void fdpassing_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # FDPassing *fdpassing_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # FDPassing *fdpassing_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void fdpassing_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # FDPassing *fdpassing_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # FDPassing *fdpassing_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_FDPASSING_SKELETON (fdpassing_skeleton_get_type ()) 791s # #define FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeleton)) 791s # #define FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 791s # #define FDPASSING_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 791s # #define IS_FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_SKELETON)) 791s # #define IS_FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_SKELETON)) 791s # 791s # typedef struct _FDPassingSkeleton FDPassingSkeleton; 791s # typedef struct _FDPassingSkeletonClass FDPassingSkeletonClass; 791s # typedef struct _FDPassingSkeletonPrivate FDPassingSkeletonPrivate; 791s # 791s # struct _FDPassingSkeleton 791s # { 791s # /*< private >*/ 791s # GDBusInterfaceSkeleton parent_instance; 791s # FDPassingSkeletonPrivate *priv; 791s # }; 791s # 791s # struct _FDPassingSkeletonClass 791s # { 791s # GDBusInterfaceSkeletonClass parent_class; 791s # }; 791s # 791s # GType fdpassing_skeleton_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingSkeleton, g_object_unref) 791s # #endif 791s # 791s # FDPassing *fdpassing_skeleton_new (void); 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s # 791s # /tmp/tmpt_dcjtbr/tmppxa_iuf4.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpt_dcjtbr/tmppxa_iuf4.xml', '--output', '-', '--header', '--glib-min-required', '2.32'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # /* Declarations for FDPassing */ 791s # 791s # #define TYPE_FDPASSING (fdpassing_get_type ()) 791s # #define FDPASSING(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING, FDPassing)) 791s # #define IS_FDPASSING(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING)) 791s # #define FDPASSING_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_FDPASSING, FDPassingIface)) 791s # 791s # struct _FDPassing; 791s # typedef struct _FDPassing FDPassing; 791s # typedef struct _FDPassingIface FDPassingIface; 791s # 791s # struct _FDPassingIface 791s # { 791s # GTypeInterface parent_iface; 791s # 791s # gboolean (*handle_hello_fd) ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list, 791s # const gchar *arg_greeting); 791s # 791s # gboolean (*handle_no_annotation) ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GVariant *arg_greeting, 791s # const gchar *arg_greeting_locale); 791s # 791s # gboolean (*handle_no_annotation_nested) ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GVariant *arg_files); 791s # 791s # }; 791s # 791s # GType fdpassing_get_type (void) G_GNUC_CONST; 791s # 791s # GDBusInterfaceInfo *fdpassing_interface_info (void); 791s # guint fdpassing_override_properties (GObjectClass *klass, guint property_id_begin); 791s # 791s # 791s # /* D-Bus method call completion functions: */ 791s # void fdpassing_complete_hello_fd ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list, 791s # const gchar *response); 791s # 791s # void fdpassing_complete_no_annotation ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GVariant *response, 791s # const gchar *response_locale); 791s # 791s # void fdpassing_complete_no_annotation_nested ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation); 791s # 791s # 791s # 791s # /* D-Bus method calls: */ 791s # void fdpassing_call_hello_fd ( 791s # FDPassing *proxy, 791s # const gchar *arg_greeting, 791s # GUnixFDList *fd_list, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean fdpassing_call_hello_fd_finish ( 791s # FDPassing *proxy, 791s # gchar **out_response, 791s # GUnixFDList **out_fd_list, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean fdpassing_call_hello_fd_sync ( 791s # FDPassing *proxy, 791s # const gchar *arg_greeting, 791s # GUnixFDList *fd_list, 791s # gchar **out_response, 791s # GUnixFDList **out_fd_list, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void fdpassing_call_no_annotation ( 791s # FDPassing *proxy, 791s # GVariant *arg_greeting, 791s # const gchar *arg_greeting_locale, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean fdpassing_call_no_annotation_finish ( 791s # FDPassing *proxy, 791s # GVariant **out_response, 791s # gchar **out_response_locale, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean fdpassing_call_no_annotation_sync ( 791s # FDPassing *proxy, 791s # GVariant *arg_greeting, 791s # const gchar *arg_greeting_locale, 791s # GVariant **out_response, 791s # gchar **out_response_locale, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void fdpassing_call_no_annotation_nested ( 791s # FDPassing *proxy, 791s # GVariant *arg_files, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean fdpassing_call_no_annotation_nested_finish ( 791s # FDPassing *proxy, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean fdpassing_call_no_annotation_nested_sync ( 791s # FDPassing *proxy, 791s # GVariant *arg_files, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_FDPASSING_PROXY (fdpassing_proxy_get_type ()) 791s # #define FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_PROXY, FDPassingProxy)) 791s # #define FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 791s # #define FDPASSING_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 791s # #define IS_FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_PROXY)) 791s # #define IS_FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_PROXY)) 791s # 791s # typedef struct _FDPassingProxy FDPassingProxy; 791s # typedef struct _FDPassingProxyClass FDPassingProxyClass; 791s # typedef struct _FDPassingProxyPrivate FDPassingProxyPrivate; 791s # 791s # struct _FDPassingProxy 791s # { 791s # /*< private >*/ 791s # GDBusProxy parent_instance; 791s # FDPassingProxyPrivate *priv; 791s # }; 791s # 791s # struct _FDPassingProxyClass 791s # { 791s # GDBusProxyClass parent_class; 791s # }; 791s # 791s # GType fdpassing_proxy_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingProxy, g_object_unref) 791s # #endif 791s # 791s # void fdpassing_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # FDPassing *fdpassing_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # FDPassing *fdpassing_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void fdpassing_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # FDPassing *fdpassing_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # FDPassing *fdpassing_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_FDPASSING_SKELETON (fdpassing_skeleton_get_type ()) 791s # #define FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeleton)) 791s # #define FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 791s # #define FDPASSING_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 791s # #define IS_FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_SKELETON)) 791s # #define IS_FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_SKELETON)) 791s # 791s # typedef struct _FDPassingSkeleton FDPassingSkeleton; 791s # typedef struct _FDPassingSkeletonClass FDPassingSkeletonClass; 791s # typedef struct _FDPassingSkeletonPrivate FDPassingSkeletonPrivate; 791s # 791s # struct _FDPassingSkeleton 791s # { 791s # /*< private >*/ 791s # GDBusInterfaceSkeleton parent_instance; 791s # FDPassingSkeletonPrivate *priv; 791s # }; 791s # 791s # struct _FDPassingSkeletonClass 791s # { 791s # GDBusInterfaceSkeletonClass parent_class; 791s # }; 791s # 791s # GType fdpassing_skeleton_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingSkeleton, g_object_unref) 791s # #endif 791s # 791s # FDPassing *fdpassing_skeleton_new (void); 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s # 791s # /tmp/tmpt_dcjtbr/tmp1vu6ples.xml: 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # 791s # Running: ['/usr/bin/gdbus-codegen', '/tmp/tmpt_dcjtbr/tmp1vu6ples.xml', '--output', '-', '--header', '--glib-min-required', '2.64'] 791s # Return code: 0 791s # Output: 791s # /* 791s # * This file is generated by gdbus-codegen, do not modify it. 791s # * 791s # * The license of this code is the same as for the D-Bus interface description 791s # * it was derived from. Note that it links to GLib, so must comply with the 791s # * LGPL linking clauses. 791s # */ 791s # 791s # #ifndef __STDOUT__ 791s # #define __STDOUT__ 791s # 791s # #include 791s # 791s # G_BEGIN_DECLS 791s # 791s # 791s # /* ------------------------------------------------------------------------ */ 791s # /* Declarations for FDPassing */ 791s # 791s # #define TYPE_FDPASSING (fdpassing_get_type ()) 791s # #define FDPASSING(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING, FDPassing)) 791s # #define IS_FDPASSING(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING)) 791s # #define FDPASSING_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_FDPASSING, FDPassingIface)) 791s # 791s # struct _FDPassing; 791s # typedef struct _FDPassing FDPassing; 791s # typedef struct _FDPassingIface FDPassingIface; 791s # 791s # struct _FDPassingIface 791s # { 791s # GTypeInterface parent_iface; 791s # 791s # gboolean (*handle_hello_fd) ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list, 791s # const gchar *arg_greeting); 791s # 791s # gboolean (*handle_no_annotation) ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list, 791s # GVariant *arg_greeting, 791s # const gchar *arg_greeting_locale); 791s # 791s # gboolean (*handle_no_annotation_nested) ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list, 791s # GVariant *arg_files); 791s # 791s # }; 791s # 791s # GType fdpassing_get_type (void) G_GNUC_CONST; 791s # 791s # GDBusInterfaceInfo *fdpassing_interface_info (void); 791s # guint fdpassing_override_properties (GObjectClass *klass, guint property_id_begin); 791s # 791s # 791s # /* D-Bus method call completion functions: */ 791s # void fdpassing_complete_hello_fd ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list, 791s # const gchar *response); 791s # 791s # void fdpassing_complete_no_annotation ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list, 791s # GVariant *response, 791s # const gchar *response_locale); 791s # 791s # void fdpassing_complete_no_annotation_nested ( 791s # FDPassing *object, 791s # GDBusMethodInvocation *invocation, 791s # GUnixFDList *fd_list); 791s # 791s # 791s # 791s # /* D-Bus method calls: */ 791s # void fdpassing_call_hello_fd ( 791s # FDPassing *proxy, 791s # const gchar *arg_greeting, 791s # GDBusCallFlags call_flags, 791s # gint timeout_msec, 791s # GUnixFDList *fd_list, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean fdpassing_call_hello_fd_finish ( 791s # FDPassing *proxy, 791s # gchar **out_response, 791s # GUnixFDList **out_fd_list, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean fdpassing_call_hello_fd_sync ( 791s # FDPassing *proxy, 791s # const gchar *arg_greeting, 791s # GDBusCallFlags call_flags, 791s # gint timeout_msec, 791s # GUnixFDList *fd_list, 791s # gchar **out_response, 791s # GUnixFDList **out_fd_list, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void fdpassing_call_no_annotation ( 791s # FDPassing *proxy, 791s # GVariant *arg_greeting, 791s # const gchar *arg_greeting_locale, 791s # GDBusCallFlags call_flags, 791s # gint timeout_msec, 791s # GUnixFDList *fd_list, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean fdpassing_call_no_annotation_finish ( 791s # FDPassing *proxy, 791s # GVariant **out_response, 791s # gchar **out_response_locale, 791s # GUnixFDList **out_fd_list, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean fdpassing_call_no_annotation_sync ( 791s # FDPassing *proxy, 791s # GVariant *arg_greeting, 791s # const gchar *arg_greeting_locale, 791s # GDBusCallFlags call_flags, 791s # gint timeout_msec, 791s # GUnixFDList *fd_list, 791s # GVariant **out_response, 791s # gchar **out_response_locale, 791s # GUnixFDList **out_fd_list, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void fdpassing_call_no_annotation_nested ( 791s # FDPassing *proxy, 791s # GVariant *arg_files, 791s # GDBusCallFlags call_flags, 791s # gint timeout_msec, 791s # GUnixFDList *fd_list, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # 791s # gboolean fdpassing_call_no_annotation_nested_finish ( 791s # FDPassing *proxy, 791s # GUnixFDList **out_fd_list, 791s # GAsyncResult *res, 791s # GError **error); 791s # 791s # gboolean fdpassing_call_no_annotation_nested_sync ( 791s # FDPassing *proxy, 791s # GVariant *arg_files, 791s # GDBusCallFlags call_flags, 791s # gint timeout_msec, 791s # GUnixFDList *fd_list, 791s # GUnixFDList **out_fd_list, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_FDPASSING_PROXY (fdpassing_proxy_get_type ()) 791s # #define FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_PROXY, FDPassingProxy)) 791s # #define FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 791s # #define FDPASSING_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_PROXY, FDPassingProxyClass)) 791s # #define IS_FDPASSING_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_PROXY)) 791s # #define IS_FDPASSING_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_PROXY)) 791s # 791s # typedef struct _FDPassingProxy FDPassingProxy; 791s # typedef struct _FDPassingProxyClass FDPassingProxyClass; 791s # typedef struct _FDPassingProxyPrivate FDPassingProxyPrivate; 791s # 791s # struct _FDPassingProxy 791s # { 791s # /*< private >*/ 791s # GDBusProxy parent_instance; 791s # FDPassingProxyPrivate *priv; 791s # }; 791s # 791s # struct _FDPassingProxyClass 791s # { 791s # GDBusProxyClass parent_class; 791s # }; 791s # 791s # GType fdpassing_proxy_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingProxy, g_object_unref) 791s # #endif 791s # 791s # void fdpassing_proxy_new ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # FDPassing *fdpassing_proxy_new_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # FDPassing *fdpassing_proxy_new_sync ( 791s # GDBusConnection *connection, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # void fdpassing_proxy_new_for_bus ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GAsyncReadyCallback callback, 791s # gpointer user_data); 791s # FDPassing *fdpassing_proxy_new_for_bus_finish ( 791s # GAsyncResult *res, 791s # GError **error); 791s # FDPassing *fdpassing_proxy_new_for_bus_sync ( 791s # GBusType bus_type, 791s # GDBusProxyFlags flags, 791s # const gchar *name, 791s # const gchar *object_path, 791s # GCancellable *cancellable, 791s # GError **error); 791s # 791s # 791s # /* ---- */ 791s # 791s # #define TYPE_FDPASSING_SKELETON (fdpassing_skeleton_get_type ()) 791s # #define FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeleton)) 791s # #define FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 791s # #define FDPASSING_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_FDPASSING_SKELETON, FDPassingSkeletonClass)) 791s # #define IS_FDPASSING_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_FDPASSING_SKELETON)) 791s # #define IS_FDPASSING_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_FDPASSING_SKELETON)) 791s # 791s # typedef struct _FDPassingSkeleton FDPassingSkeleton; 791s # typedef struct _FDPassingSkeletonClass FDPassingSkeletonClass; 791s # typedef struct _FDPassingSkeletonPrivate FDPassingSkeletonPrivate; 791s # 791s # struct _FDPassingSkeleton 791s # { 791s # /*< private >*/ 791s # GDBusInterfaceSkeleton parent_instance; 791s # FDPassingSkeletonPrivate *priv; 791s # }; 791s # 791s # struct _FDPassingSkeletonClass 791s # { 791s # GDBusInterfaceSkeletonClass parent_class; 791s # }; 791s # 791s # GType fdpassing_skeleton_get_type (void) G_GNUC_CONST; 791s # 791s # #if GLIB_CHECK_VERSION(2, 44, 0) 791s # G_DEFINE_AUTOPTR_CLEANUP_FUNC (FDPassingSkeleton, g_object_unref) 791s # #endif 791s # 791s # FDPassing *fdpassing_skeleton_new (void); 791s # 791s # 791s # G_END_DECLS 791s # 791s # #endif /* __STDOUT__ */ 791s # Error: 791s 1..39 791s ok - glib/codegen.py.test 791s # Running test: glib/null-settings-backend.test 791s TAP version 14 791s # random seed: R02Sa618fde6e3f21a6da4474f5c16c78997 791s 1..1 791s # Start of null-settings-backend tests 791s ok 1 /null-settings-backend/extension-point-registered 791s # End of null-settings-backend tests 791s ok - glib/null-settings-backend.test 791s # Running test: glib/memchunk.test 791s TAP version 14 791s # random seed: R02S48a381654509b1c2db97e558c4b3b9b8 791s 1..1 791s # Start of memchunk tests 791s ok - glib/memchunk.test 791s ok 1 /memchunk/basic 791s # End of memchunk tests 791s # Running test: glib/dataset.test 791s TAP version 14 791s # random seed: R02S0a9e50943fa29589be18624f94cc3f7d 791s 1..14 791s # Start of quark tests 791s ok 1 /quark/basic 791s ok 2 /quark/string 791s # End of quark tests 791s # Start of dataset tests 791s ok 3 /dataset/basic 791s ok 4 /dataset/id 791s ok 5 /dataset/full 791s ok 6 /dataset/foreach 791s ok 7 /dataset/destroy 791s # End of dataset tests 791s # Start of datalist tests 791s ok 8 /datalist/basic 791s ok 9 /datalist/id 791s ok 10 /datalist/recursive-clear 791s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2672 791s ok 11 /datalist/id-remove-multiple 791s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2672 791s ok 12 /datalist/id-remove-multiple-destroy-order 791s ok 13 /datalist/update-atomic 791s # Start of id-remove-multiple tests 791s ok - glib/dataset.test 791s ok 14 /datalist/id-remove-multiple/resize 791s # End of id-remove-multiple tests 791s # End of datalist tests 791s # Running test: glib/completion.test 791s ok - glib/completion.test 791s TAP version 14 791s # random seed: R02S9b8e411be6cdba36c36980d8ee04105c 791s 1..1 791s # Start of completion tests 791s ok 1 /completion/test-completion 791s # End of completion tests 791s # Running test: glib/ifaceproperties.test 791s TAP version 14 791s # random seed: R02Sa90df82b1473b7e621d85a60b326b6ea 791s 1..7 791s # Start of interface tests 791s # Start of properties tests 791s ok 1 /interface/properties/set 791s ok 2 /interface/properties/notify 791s ok 3 /interface/properties/find-overridden 791s ok 4 /interface/properties/list-overridden 791s ok 5 /interface/properties/find-interface 791s ok 6 /interface/properties/list-interface 791s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=637738 791s ok 7 /interface/properties/not-overridden 791s # End of properties tests 791s # End of interface tests 791s ok - glib/ifaceproperties.test 791s # Running test: glib/gdbus-connection-loss.test 791s TAP version 14 791s # random seed: R02Saea509dc8ed4f7d9ffa74f4cb0710b5a 791s 1..1 791s # Start of gdbus tests 791s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/home 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/cache 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/system-config1:/tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/system-config2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/config 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/system-data1:/tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/system-data2 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/data 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/state 791s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-loss_6LCA62/gdbus/connection-loss/.dirs/runtime 791s ok - glib/gdbus-connection-loss.test 791s ok 1 /gdbus/connection-loss 791s # End of gdbus tests 791s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 791s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 791s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 791s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 791s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 791s # Running test: glib/node.test 791s TAP version 14 791s # random seed: R02S4f6b99bb396ac3a9afbade92d3bc9d24 791s 1..6 791s # Start of node tests 791s ok - glib/node.test 791s # Running test: glib/queue.test 791s ok 1 /node/allocation 791s ok 2 /node/construction 791s ok 3 /node/traversal 791s ok 4 /node/misc 791s ok 5 /node/unlink 791s ok 6 /node/copy 791s # End of node tests 791s TAP version 14 791s # random seed: R02S16d0cd8d4763d54bd4fcf201b68a6c62 791s 1..12 791s # Start of queue tests 791s ok 1 /queue/basic 791s ok 2 /queue/copy 791s ok 3 /queue/off-by-one 791s ok 4 /queue/find-custom 791s ok 5 /queue/static 791s ok 6 /queue/clear 791s ok 7 /queue/free-full 791s ok 8 /queue/clear-full 791s ok 9 /queue/insert-sibling-link 791s ok 10 /queue/push-nth-link 791s # Start of clear-full tests 791s ok 11 /queue/clear-full/noop 791s # End of clear-full tests 791s # Start of random tests 791s ok 12 /queue/random/seed:976167314 791s # End of random tests 791s # End of queue tests 791s ok - glib/queue.test 791s # Running test: glib/io-stream.test 791s TAP version 14 791s # random seed: R02S2194c29dcaba8640d6747e833ddaa1a8 791s 1..3 791s # Start of io-stream tests 791s ok 1 /io-stream/copy-chunks 791s # Start of close tests 791s # Start of async tests 791s ok 2 /io-stream/close/async/memory 791s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 791s ok 3 /io-stream/close/async/file 791s # End of async tests 791s # End of close tests 791s # End of io-stream tests 791s ok - glib/io-stream.test 791s # Running test: glib/socket.test 791s TAP version 14 791s # random seed: R02S33191b7a74b9b0d015e06757e430441e 791s 1..28 791s # Start of socket tests 793s ok 1 /socket/ipv4_sync 793s # slow test /socket/ipv4_sync executed in 1.00 secs 793s ok 2 /socket/ipv4_async 793s # slow test /socket/ipv4_async executed in 1.00 secs 793s ok 3 /socket/ipv6_sync 793s ok 4 /socket/ipv6_async 794s ok 5 /socket/ipv6_v4mapped 795s ok 6 /socket/close_graceful 795s # slow test /socket/close_graceful executed in 1.00 secs 795s ok 7 /socket/timed_wait # SKIP Not running timing heavy test 795s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=741707 795s ok 8 /socket/fd_reuse 795s ok 9 /socket/address 795s ok 10 /socket/unix-from-fd 795s ok 11 /socket/unix-connection 795s ok 12 /socket/unix-connection-ancillary-data 795s ok 13 /socket/source-postmortem 795s ok 14 /socket/read_write 795s ok 15 /socket/read_writev 795s # /socket/receive_bytes summary: Test basic functionality of g_socket_receive_bytes() 795s ok 16 /socket/receive_bytes 795s # /socket/receive_bytes_from summary: Test basic functionality of g_socket_receive_bytes_from() 795s ok 17 /socket/receive_bytes_from 795s # Start of ipv4_sync tests 795s ok 18 /socket/ipv4_sync/datagram 795s # Start of datagram tests 795s # Executing: glib/socket.test 796s ok 19 /socket/ipv4_sync/datagram/timeouts 796s # slow test /socket/ipv4_sync/datagram/timeouts executed in 1.10 secs 796s # End of datagram tests 796s # End of ipv4_sync tests 796s # Start of ipv6_sync tests 796s ok 20 /socket/ipv6_sync/datagram 796s # Start of datagram tests 797s ok 21 /socket/ipv6_sync/datagram/timeouts 797s # slow test /socket/ipv6_sync/datagram/timeouts executed in 1.10 secs 797s # End of datagram tests 797s # End of ipv6_sync tests 797s # Start of reuse tests 797s ok 22 /socket/reuse/tcp 797s ok 23 /socket/reuse/udp 797s # End of reuse tests 797s # Start of get_available tests 797s ok 24 /socket/get_available/datagram 797s ok 25 /socket/get_available/stream 797s # End of get_available tests 797s # Start of credentials tests 797s # Supported on this OS: GCredentials:linux-ucred:pid=0 797s ok 26 /socket/credentials/tcp_client 797s # Supported on this OS: GCredentials:linux-ucred:pid=0 797s ok 27 /socket/credentials/tcp_server 797s # Supported on this OS: GCredentials:linux-ucred:pid=14681,uid=1000,gid=1000 797s ok 28 /socket/credentials/unix_socketpair 797s # End of credentials tests 797s # End of socket tests 797s ok - glib/socket.test 797s # Running test: glib/async-close-output-stream.test 797s TAP version 14 797s # random seed: R02S15b34af98641db044c95c335e9d0e441 797s 1..3 797s # Start of close-async tests 797s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=617937 797s ok 1 /close-async/without-flush 797s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=617937 797s ok - glib/async-close-output-stream.test 797s # Running test: glib/unicode.test 797s ok 2 /close-async/with-flush 797s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=617937 797s ok 3 /close-async/with-async-flush 797s # End of close-async tests 797s TAP version 14 797s # random seed: R02S0fb71f2610448e6bdc596c6946128a25 797s 1..39 797s # Start of unicode tests 797s ok 1 /unicode/alnum 797s ok 2 /unicode/alpha 797s ok 3 /unicode/break-type 797s ok 4 /unicode/canonical-decomposition 797s ok 5 /unicode/casefold 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s # Cannot set locale to lt_LT, skipping 797s ok 6 /unicode/casemap_and_casefold 797s ok 7 /unicode/cases 797s ok 8 /unicode/character-type 797s ok 9 /unicode/cntrl 797s ok 10 /unicode/combining-class 797s # Composing U+000041 and U+000042; expecting U+000000 797s # Composing U+000041 and U+000000; expecting U+000000 797s # Composing U+000066 and U+000069; expecting U+000000 797s # Composing U+000308 and U+000301; expecting U+000000 797s # Composing U+000f71 and U+000f72; expecting U+000000 797s # Composing U+00212b and U+000000; expecting U+000000 797s # Composing U+0000c5 and U+000000; expecting U+000000 797s # Composing U+002126 and U+000000; expecting U+000000 797s # Composing U+0003a9 and U+000000; expecting U+000000 797s # Composing U+000041 and U+00030a; expecting U+0000c5 797s # Composing U+00006f and U+000302; expecting U+0000f4 797s # Composing U+001e63 and U+000307; expecting U+001e69 797s # Composing U+000073 and U+000323; expecting U+001e63 797s # Composing U+000064 and U+000307; expecting U+001e0b 797s # Composing U+000064 and U+000323; expecting U+001e0d 797s # Composing U+00d4cc and U+0011b6; expecting U+00d4db 797s # Composing U+001111 and U+001171; expecting U+00d4cc 797s # Composing U+00ce20 and U+0011b8; expecting U+00ce31 797s # Composing U+00110e and U+001173; expecting U+00ce20 797s # Composing U+001100 and U+001160; expecting U+000000 797s # Composing U+001100 and U+001177; expecting U+000000 797s # Composing U+00abff and U+0011b6; expecting U+000000 797s # Composing U+00d7a5 and U+0011b6; expecting U+000000 797s # Composing U+00ac01 and U+0011b6; expecting U+000000 797s # Composing U+00d4cc and U+0011a6; expecting U+000000 797s # Composing U+00d4cc and U+0011c4; expecting U+000000 797s # Composing U+01611e and U+01611e; expecting U+016121 797s # Composing U+01611e and U+01611f; expecting U+016123 797s # Composing U+0000f6 and U+000304; expecting U+00022b 797s # Composing U+000b47 and U+000b57; expecting U+000b4c 797s # Composing U+0000a0 and U+000b57; expecting U+000000 797s # Composing U+016e00 and U+00030a; expecting U+000000 797s # Composing U+00212b and U+016e00; expecting U+000000 797s # Composing U+001e63 and U+000306; expecting U+000000 797s # Composing U+001e63 and U+000304; expecting U+000000 797s # Composing U+001e63 and U+000b57; expecting U+000000 797s # Composing U+001e63 and U+000000; expecting U+000000 797s # Composing U+001e63 and U+0113c2; expecting U+000000 797s # Composing U+001f01 and U+0113c2; expecting U+000000 797s # Composing U+00006e and U+000302; expecting U+000000 797s # Composing U+001e63 and U+01611f; expecting U+000000 797s # Composing U+01138e and U+0113b8; expecting U+000000 797s # Composing U+01611e and U+000000; expecting U+000000 797s # Composing U+000000 and U+01611f; expecting U+000000 797s # Composing U+011390 and U+0113c2; expecting U+000000 797s ok 11 /unicode/compose 797s ok 12 /unicode/decompose 797s ok 13 /unicode/decompose-tail 797s ok 14 /unicode/defined 797s ok 15 /unicode/digit 797s ok 16 /unicode/digit-value 797s # Fully decomposing U+000041; expecting 1 codepoints 797s # Fully decomposing U+00fb01; expecting 1 codepoints 797s # Fully decomposing U+00212b; expecting 2 codepoints 797s # Fully decomposing U+002126; expecting 1 codepoints 797s # Fully decomposing U+000344; expecting 2 codepoints 797s # Fully decomposing U+000f73; expecting 2 codepoints 797s # Fully decomposing U+0000c5; expecting 2 codepoints 797s # Fully decomposing U+0000f4; expecting 2 codepoints 797s # Fully decomposing U+001e69; expecting 3 codepoints 797s # Fully decomposing U+001e63; expecting 2 codepoints 797s # Fully decomposing U+001e0b; expecting 2 codepoints 797s # Fully decomposing U+001e0d; expecting 2 codepoints 797s # Fully decomposing U+00d4db; expecting 3 codepoints 797s # Fully decomposing U+00d4cc; expecting 2 codepoints 797s # Fully decomposing U+00ce31; expecting 3 codepoints 797s # Fully decomposing U+00ce20; expecting 2 codepoints 797s ok 17 /unicode/fully-decompose-canonical 797s ok 18 /unicode/fully-decompose-len 797s ok 19 /unicode/normalization 797s ok 20 /unicode/graph 797s # Testing script Zyyy (code 1517910393) 797s # Testing script Zinh (code 1516858984) 797s # Testing script Zmth (code 1517122664) 797s # Testing script Arab (code 1098015074) 797s # Testing script Armn (code 1098018158) 797s # Testing script Beng (code 1113943655) 797s # Testing script Bopo (code 1114599535) 797s # Testing script Cher (code 1130915186) 797s # Testing script Copt (code 1131376756) 797s # Testing script Cyrl (code 1132032620) 797s # Testing script Dsrt (code 1148416628) 797s # Testing script Deva (code 1147500129) 797s # Testing script Ethi (code 1165256809) 797s # Testing script Geor (code 1197830002) 797s # Testing script Goth (code 1198486632) 797s # Testing script Grek (code 1198679403) 797s # Testing script Gujr (code 1198877298) 797s # Testing script Guru (code 1198879349) 797s # Testing script Hani (code 1214344809) 797s # Testing script Hang (code 1214344807) 797s # Testing script Hebr (code 1214603890) 797s # Testing script Hira (code 1214870113) 797s # Testing script Knda (code 1265525857) 797s # Testing script Kana (code 1264676449) 797s # Testing script Khmr (code 1265134962) 797s # Testing script Laoo (code 1281453935) 797s # Testing script Latn (code 1281455214) 797s # Testing script Mlym (code 1298954605) 797s # Testing script Mong (code 1299148391) 797s # Testing script Mymr (code 1299803506) 797s # Testing script Ogam (code 1332175213) 797s # Testing script Ital (code 1232363884) 797s # Testing script Orya (code 1332902241) 797s # Testing script Runr (code 1383427698) 797s # Testing script Sinh (code 1399418472) 797s # Testing script Syrc (code 1400468067) 797s # Testing script Taml (code 1415671148) 797s # Testing script Telu (code 1415933045) 797s # Testing script Thaa (code 1416126817) 797s # Testing script Thai (code 1416126825) 797s # Testing script Tibt (code 1416192628) 797s # Testing script Cans (code 1130458739) 797s # Testing script Yiii (code 1500080489) 797s # Testing script Tglg (code 1416064103) 797s # Testing script Hano (code 1214344815) 797s # Testing script Buhd (code 1114990692) 797s # Testing script Tagb (code 1415669602) 797s # Testing script Brai (code 1114792297) 797s # Testing script Cprt (code 1131442804) 797s # Testing script Limb (code 1281977698) 797s # Testing script Osma (code 1332964705) 797s # Testing script Shaw (code 1399349623) 797s # Testing script Linb (code 1281977954) 797s # Testing script Tale (code 1415670885) 797s # Testing script Ugar (code 1432838514) 797s # Testing script Talu (code 1415670901) 797s # Testing script Bugi (code 1114990441) 797s # Testing script Glag (code 1198285159) 797s # Testing script Tfng (code 1415999079) 797s # Testing script Sylo (code 1400466543) 797s # Testing script Xpeo (code 1483761007) 797s # Testing script Khar (code 1265131890) 797s # Testing script Zzzz (code 1517976186) 797s # Testing script Bali (code 1113681001) 797s # Testing script Xsux (code 1483961720) 797s # Testing script Phnx (code 1349021304) 797s # Testing script Phag (code 1349017959) 797s # Testing script Nkoo (code 1315663727) 797s # Testing script Kali (code 1264675945) 797s # Testing script Lepc (code 1281716323) 797s # Testing script Rjng (code 1382706791) 797s # Testing script Sund (code 1400204900) 797s # Testing script Saur (code 1398895986) 797s # Testing script Cham (code 1130914157) 797s # Testing script Olck (code 1332503403) 797s # Testing script Vaii (code 1449224553) 797s # Testing script Cari (code 1130459753) 797s # Testing script Lyci (code 1283023721) 797s # Testing script Lydi (code 1283023977) 797s # Testing script Avst (code 1098281844) 797s # Testing script Bamu (code 1113681269) 797s # Testing script Egyp (code 1164409200) 797s # Testing script Armi (code 1098018153) 797s # Testing script Phli (code 1349020777) 797s # Testing script Prti (code 1349678185) 797s # Testing script Java (code 1247901281) 797s # Testing script Kthi (code 1265920105) 797s # Testing script Lisu (code 1281979253) 797s # Testing script Mtei (code 1299473769) 797s # Testing script Sarb (code 1398895202) 797s # Testing script Orkh (code 1332898664) 797s # Testing script Samr (code 1398893938) 797s # Testing script Lana (code 1281453665) 797s # Testing script Tavt (code 1415673460) 797s # Testing script Batk (code 1113683051) 797s # Testing script Brah (code 1114792296) 797s # Testing script Mand (code 1298230884) 797s # Testing script Cakm (code 1130457965) 797s # Testing script Merc (code 1298494051) 797s # Testing script Mero (code 1298494063) 797s # Testing script Plrd (code 1349284452) 797s # Testing script Shrd (code 1399353956) 797s # Testing script Sora (code 1399812705) 797s # Testing script Takr (code 1415670642) 797s # Testing script Bass (code 1113682803) 797s # Testing script Aghb (code 1097295970) 797s # Testing script Dupl (code 1148547180) 797s # Testing script Elba (code 1164730977) 797s # Testing script Gran (code 1198678382) 797s # Testing script Khoj (code 1265135466) 797s # Testing script Sind (code 1399418468) 797s # Testing script Lina (code 1281977953) 797s # Testing script Mahj (code 1298229354) 797s # Testing script Mani (code 1298230889) 797s # Testing script Mend (code 1298493028) 797s # Testing script Modi (code 1299145833) 797s # Testing script Mroo (code 1299345263) 797s # Testing script Nbat (code 1315070324) 797s # Testing script Narb (code 1315009122) 797s # Testing script Perm (code 1348825709) 797s # Testing script Hmng (code 1215131239) 797s # Testing script Palm (code 1348562029) 797s # Testing script Pauc (code 1348564323) 797s # Testing script Phlp (code 1349020784) 797s # Testing script Sidd (code 1399415908) 797s # Testing script Tirh (code 1416196712) 797s # Testing script Wara (code 1466004065) 797s # Testing script Ahom (code 1097363309) 797s # Testing script Hluw (code 1215067511) 797s # Testing script Hatr (code 1214346354) 797s # Testing script Mult (code 1299541108) 797s # Testing script Hung (code 1215655527) 797s # Testing script Sgnw (code 1399287415) 797s # Testing script Adlm (code 1097100397) 797s # Testing script Bhks (code 1114139507) 797s # Testing script Marc (code 1298231907) 797s # Testing script Newa (code 1315272545) 797s # Testing script Osge (code 1332963173) 797s # Testing script Tang (code 1415671399) 797s # Testing script Gonm (code 1198485101) 797s # Testing script Nshu (code 1316186229) 797s # Testing script Soyo (code 1399814511) 797s # Testing script Zanb (code 1516334690) 797s # Testing script Dogr (code 1148151666) 797s # Testing script Gong (code 1198485095) 797s # Testing script Rohg (code 1383032935) 797s # Testing script Maka (code 1298230113) 797s # Testing script Medf (code 1298490470) 797s ok - glib/unicode.test 797s # Running test: glib/trash.test 797s ok - glib/trash.test 797s # Running test: glib/boxed.test 797s ok - glib/boxed.test 797s # Running test: glib/tls-interaction.test 797s ok - glib/tls-interaction.test 797s # Running test: glib/socket-listener.test 797s ok - glib/socket-listener.test 797s # Running test: glib/mutex.test 797s # Testing script Sogo (code 1399809903) 797s # Testing script Sogd (code 1399809892) 797s # Testing script Elym (code 1164736877) 797s # Testing script Nand (code 1315008100) 797s # Testing script Hmnp (code 1215131248) 797s # Testing script Wcho (code 1466132591) 797s # Testing script Chrs (code 1130918515) 797s # Testing script Diak (code 1147756907) 797s # Testing script Kits (code 1265202291) 797s # Testing script Yezi (code 1499822697) 797s # Testing script Cpmn (code 1131441518) 797s # Testing script Ougr (code 1333094258) 797s # Testing script Tnsa (code 1416524641) 797s # Testing script Toto (code 1416590447) 797s # Testing script Vith (code 1449751656) 797s # Testing script Kawi (code 1264678761) 797s # Testing script Nagm (code 1315006317) 797s # Testing script Todr (code 1416586354) 797s # Testing script Gara (code 1197568609) 797s # Testing script Tutg (code 1416983655) 797s # Testing script Sunu (code 1400204917) 797s # Testing script Gukh (code 1198877544) 797s # Testing script Krai (code 1265787241) 797s # Testing script Onao (code 1332633967) 797s ok 21 /unicode/iso15924 797s ok 22 /unicode/lower 797s ok 23 /unicode/mark 797s ok 24 /unicode/mirror 797s ok 25 /unicode/print 797s ok 26 /unicode/punctuation 797s ok 27 /unicode/script 797s ok 28 /unicode/space 797s ok 29 /unicode/strdown 797s ok 30 /unicode/strup 797s ok 31 /unicode/turkish-strupdown 797s ok 32 /unicode/title 797s ok 33 /unicode/upper 797s ok 34 /unicode/validate 797s ok 35 /unicode/wide 797s ok 36 /unicode/xdigit 797s ok 37 /unicode/xdigit-value 797s ok 38 /unicode/zero-width 797s ok 39 /unicode/normalize 797s # End of unicode tests 797s TAP version 14 797s # random seed: R02S9246e3220418508f7bfdf1989f158d7b 797s 1..3 797s # Start of trash tests 797s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/251 797s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 797s # File: /tmp/test-trashS68V52 (parent st_dev: 64769) 797s # Home: /home/ubuntu (st_dev: 64769) 797s ok 1 /trash/not-supported # SKIP The file has to be on another filesystem than the home trash to run this test 797s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1522 797s ok 2 /trash/symlinks # SKIP Directory '/home/ubuntu/.local' does not exist 797s ok 3 /trash/long-filename 797s # End of trash tests 797s TAP version 14 797s # random seed: R02S6c22998ca4424019afcb02a9cdc52a8d 797s 1..27 797s # Start of boxed tests 797s ok 1 /boxed/define 797s ok 2 /boxed/ownership 797s ok 3 /boxed/closure 797s ok 4 /boxed/date 797s ok 5 /boxed/value 797s ok 6 /boxed/string 797s ok 7 /boxed/hashtable 797s ok 8 /boxed/array 797s ok 9 /boxed/ptrarray 797s ok 10 /boxed/regex 797s ok 11 /boxed/varianttype 797s ok 12 /boxed/error 797s ok 13 /boxed/datetime 797s ok 14 /boxed/matchinfo 797s ok 15 /boxed/keyfile 797s ok 16 /boxed/mainloop 797s ok 17 /boxed/maincontext 797s ok 18 /boxed/source 797s ok 19 /boxed/variantbuilder 797s ok 20 /boxed/timezone 797s ok 21 /boxed/pollfd 797s ok 22 /boxed/markup 797s ok 23 /boxed/thread 797s ok 24 /boxed/checksum 797s ok 25 /boxed/tree 797s ok 26 /boxed/patternspec 797s ok 27 /boxed/rand 797s # End of boxed tests 797s TAP version 14 797s # random seed: R02S5cdb9c80e29c2b6ba2c24b5ceed4bbff 797s 1..42 797s # Start of tls-interaction tests 797s # Start of ask-password tests 797s # Start of invoke-with-loop tests 797s ok 1 /tls-interaction/ask-password/invoke-with-loop/unhandled-implementation 797s ok 2 /tls-interaction/ask-password/invoke-with-loop/async-implementation-success 797s ok 3 /tls-interaction/ask-password/invoke-with-loop/async-implementation-failure 797s ok 4 /tls-interaction/ask-password/invoke-with-loop/sync-implementation-success 797s ok 5 /tls-interaction/ask-password/invoke-with-loop/sync-implementation-failure 797s # End of invoke-with-loop tests 797s # Start of invoke-without-loop tests 797s ok 6 /tls-interaction/ask-password/invoke-without-loop/unhandled-implementation 797s ok 7 /tls-interaction/ask-password/invoke-without-loop/async-implementation-success 797s ok 8 /tls-interaction/ask-password/invoke-without-loop/async-implementation-failure 797s ok 9 /tls-interaction/ask-password/invoke-without-loop/sync-implementation-success 797s ok 10 /tls-interaction/ask-password/invoke-without-loop/sync-implementation-failure 797s # End of invoke-without-loop tests 797s # Start of invoke-in-loop tests 797s ok 11 /tls-interaction/ask-password/invoke-in-loop/unhandled-implementation 797s ok 12 /tls-interaction/ask-password/invoke-in-loop/async-implementation-success 797s ok 13 /tls-interaction/ask-password/invoke-in-loop/async-implementation-failure 797s ok 14 /tls-interaction/ask-password/invoke-in-loop/sync-implementation-success 797s ok 15 /tls-interaction/ask-password/invoke-in-loop/sync-implementation-failure 797s # End of invoke-in-loop tests 797s # Start of sync tests 797s ok 16 /tls-interaction/ask-password/sync/unhandled-implementation 797s ok 17 /tls-interaction/ask-password/sync/sync-implementation-success 797s ok 18 /tls-interaction/ask-password/sync/sync-implementation-failure 797s # End of sync tests 797s # Start of async tests 797s ok 19 /tls-interaction/ask-password/async/unhandled-implementation 797s ok 20 /tls-interaction/ask-password/async/async-implementation-success 797s ok 21 /tls-interaction/ask-password/async/async-implementation-failure 797s # End of async tests 797s # End of ask-password tests 797s # Start of request-certificate tests 797s # Start of invoke-with-loop tests 797s ok 22 /tls-interaction/request-certificate/invoke-with-loop/unhandled-implementation 797s ok 23 /tls-interaction/request-certificate/invoke-with-loop/async-implementation-success 797s ok 24 /tls-interaction/request-certificate/invoke-with-loop/async-implementation-failure 797s ok 25 /tls-interaction/request-certificate/invoke-with-loop/sync-implementation-success 797s ok 26 /tls-interaction/request-certificate/invoke-with-loop/sync-implementation-failure 797s # End of invoke-with-loop tests 797s # Start of invoke-without-loop tests 797s ok 27 /tls-interaction/request-certificate/invoke-without-loop/unhandled-implementation 797s ok 28 /tls-interaction/request-certificate/invoke-without-loop/async-implementation-success 797s ok 29 /tls-interaction/request-certificate/invoke-without-loop/async-implementation-failure 797s ok 30 /tls-interaction/request-certificate/invoke-without-loop/sync-implementation-success 797s ok 31 /tls-interaction/request-certificate/invoke-without-loop/sync-implementation-failure 797s # End of invoke-without-loop tests 797s # Start of invoke-in-loop tests 797s ok 32 /tls-interaction/request-certificate/invoke-in-loop/unhandled-implementation 797s ok 33 /tls-interaction/request-certificate/invoke-in-loop/async-implementation-success 797s ok 34 /tls-interaction/request-certificate/invoke-in-loop/async-implementation-failure 797s ok 35 /tls-interaction/request-certificate/invoke-in-loop/sync-implementation-success 797s ok 36 /tls-interaction/request-certificate/invoke-in-loop/sync-implementation-failure 797s # End of invoke-in-loop tests 797s # Start of sync tests 797s ok 37 /tls-interaction/request-certificate/sync/unhandled-implementation 797s ok 38 /tls-interaction/request-certificate/sync/sync-implementation-success 797s ok 39 /tls-interaction/request-certificate/sync/sync-implementation-failure 797s # End of sync tests 797s # Start of async tests 797s ok 40 /tls-interaction/request-certificate/async/unhandled-implementation 797s ok 41 /tls-interaction/request-certificate/async/async-implementation-success 797s ok 42 /tls-interaction/request-certificate/async/async-implementation-failure 797s # End of async tests 797s # End of request-certificate tests 797s # End of tls-interaction tests 797s TAP version 14 797s # random seed: R02Sb2fab5335c0d0302f6a971504cadc184 797s 1..1 797s # Start of socket-listener tests 797s ok 1 /socket-listener/event-signal 797s # End of socket-listener tests 797s TAP version 14 797s # random seed: R02S47b945f6242b27c3e10106743a7f3de7 797s 1..17 797s # Start of thread tests 797s ok 1 /thread/mutex1 797s ok 2 /thread/mutex2 797s ok 3 /thread/mutex3 797s ok 4 /thread/mutex4 800s # Executing: glib/mutex.test 801s ok 5 /thread/mutex5 801s # slow test /thread/mutex5 executed in 3.76 secs 801s # Start of mutex tests 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # /thread/mutex/errno summary: Validates that errno is not touched upon return 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3034 801s ok 6 /thread/mutex/errno 801s # Start of perf tests 801s # max perf: inf mips 801s ok 7 /thread/mutex/perf/uncontended 801s # Start of contended tests 801s # max perf: inf mips 801s ok 8 /thread/mutex/perf/contended/1 801s # max perf: 3.000000 mips 801s ok 9 /thread/mutex/perf/contended/2 801s # max perf: 2.000000 mips 801s ok 10 /thread/mutex/perf/contended/3 801s # max perf: 2.500000 mips 801s ok 11 /thread/mutex/perf/contended/4 801s # max perf: 3.000000 mips 801s ok 12 /thread/mutex/perf/contended/5 801s # max perf: 7.000000 mips 801s ok 13 /thread/mutex/perf/contended/6 801s # max perf: 0.077670 mips 801s ok 14 /thread/mutex/perf/contended/7 801s # max perf: 0.180000 mips 801s ok - glib/mutex.test 801s # Running test: glib/signal-handler.test 801s ok - glib/signal-handler.test 801s # Running test: glib/bindinggroup.test 801s ok - glib/bindinggroup.test 801s # Running test: glib/dbus-appinfo.test 801s ok 15 /thread/mutex/perf/contended/8 801s # max perf: 10.000000 mips 801s ok 16 /thread/mutex/perf/contended/9 801s # max perf: 5.500000 mips 801s ok 17 /thread/mutex/perf/contended/10 801s # End of contended tests 801s # End of perf tests 801s # End of mutex tests 801s # End of thread tests 801s TAP version 14 801s # random seed: R02S64a67010da8e649c9038b7291291aae6 801s 1..7 801s # Start of signal tests 801s # Start of handler tests 801s # min perf: connected 1 handlers in 0.000 seconds 801s ok 1 /signal/handler/connect-many 801s # min perf: disconnected 1 handlers in 0.000 seconds 801s ok 2 /signal/handler/disconnect-many-ordered 801s # min perf: disconnected 1 handlers in 0.000 seconds 801s ok 3 /signal/handler/disconnect-many-inverse 801s # min perf: disconnected 1 handlers in 0.000 seconds 801s ok 4 /signal/handler/disconnect-many-random 801s # min perf: disconnected 1 handlers in 0.000 seconds 801s ok 5 /signal/handler/disconnect-2-signals 801s # min perf: disconnected 1 handlers in 0.000 seconds 801s ok 6 /signal/handler/disconnect-2-objects 801s # min perf: blocked and unblocked 1 handlers in 0.000 seconds 801s ok 7 /signal/handler/block-many 801s # End of handler tests 801s # End of signal tests 801s TAP version 14 801s # random seed: R02S42372b162569908ec4626b62c9c98bee 801s 1..11 801s # Start of GObject tests 801s # Start of BindingGroup tests 801s ok 1 /GObject/BindingGroup/invalid 801s ok 2 /GObject/BindingGroup/default 801s ok 3 /GObject/BindingGroup/bidirectional 801s ok 4 /GObject/BindingGroup/transform 801s ok 5 /GObject/BindingGroup/transform-closures 801s ok 6 /GObject/BindingGroup/same-object 801s ok 7 /GObject/BindingGroup/weak-ref-source 801s ok 8 /GObject/BindingGroup/weak-ref-target 801s ok 9 /GObject/BindingGroup/properties 801s ok 10 /GObject/BindingGroup/weak-notify-no-bindings 801s ok 11 /GObject/BindingGroup/empty-closures 801s # End of BindingGroup tests 801s # End of GObject tests 801s TAP version 14 801s # random seed: R02S355254f9eafe66569c006446b5c2d293 801s 1..7 801s # Start of appinfo tests 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/system-config1:/tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/system-data1:/tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/runtime 801s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 801s ok 1 /appinfo/dbusappinfo 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/system-config1:/tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/system-data1:/tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/runtime 801s # /appinfo/flatpak-doc-export summary: Test that files launched via Flatpak apps are made available via the document portal. 801s # Acquired a message bus connection 801s # Acquired the name org.freedesktop.portal.Documents 801s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_SBV452/appinfo/dbusappinfo/.dirs/config to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/config 801s # on_flatpak_open received file '/document-portal/document-id/org.gtk.test.dbusappinfo.flatpak.desktop' 801s # fake-document-portal cancelled 801s ok 2 /appinfo/flatpak-doc-export 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/system-config1:/tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/system-data1:/tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/runtime 801s # /appinfo/flatpak-missing-doc-export summary: Test that files launched via Flatpak apps are made available via the document portal. 801s # Acquired a message bus connection 801s # Acquired the name org.freedesktop.portal.Documents 801s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-doc-export/.dirs/config to /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/config 801s # on_flatpak_open received file '/hopefully/an/invalid/path.desktop' 801s # fake-document-portal cancelled 801s ok 3 /appinfo/flatpak-missing-doc-export 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/system-config1:/tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/system-data1:/tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/runtime 801s # Acquired a message bus connection 801s # Acquired the name org.freedesktop.portal.Desktop 801s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_SBV452/appinfo/flatpak-missing-doc-export/.dirs/config to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/config 801s # Got open file request for file:///usr/libexec/installed-tests/glib/org.gtk.test.dbusappinfo.flatpak.desktop 801s # Request skeleton exported at /org/freedesktop/portal/desktop/request/1_5/t 801s # Response emitted 801s # fake-desktop-portal cancelled 801s ok 4 /appinfo/portal-open-file 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/system-config1:/tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/system-data1:/tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/runtime 801s # Acquired a message bus connection 801s # Acquired the name org.freedesktop.portal.Desktop 801s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file/.dirs/config to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/config 801s # Got open file request for http://example.com 801s # Request skeleton exported at /org/freedesktop/portal/desktop/request/1_7/t 801s # Response emitted 801s # fake-desktop-portal cancelled 801s ok 5 /appinfo/portal-open-uri 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/system-config1:/tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/system-data1:/tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/runtime 801s # Acquired a message bus connection 801s # Acquired the name org.freedesktop.portal.Desktop 801s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri/.dirs/config to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/config 801s # Got open file request for file:///usr/libexec/installed-tests/glib/org.gtk.test.dbusappinfo.flatpak.desktop 801s # Request skeleton exported at /org/freedesktop/portal/desktop/request/1_9/gio486120018 801s # Response emitted 801s # fake-desktop-portal cancelled 801s ok 6 /appinfo/portal-open-file-async 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/system-config1:/tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/system-data1:/tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/runtime 801s # Acquired a message bus connection 801s # Acquired the name org.freedesktop.portal.Desktop 801s # GLib-GIO-DEBUG: desktop_file_dirs_lock: Resetting desktop app info dirs from /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-file-async/.dirs/config to /tmp/test_dbus-appinfo_SBV452/appinfo/portal-open-uri-async/.dirs/config 801s # Got open file request for http://example.com 801s # Request skeleton exported at /org/freedesktop/portal/desktop/request/1_11/gio1139972830 801s # Response emitted 801s # fake-desktop-portal cancelled 801s ok 7 /appinfo/portal-open-uri-async 801s # End of appinfo tests 801s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 801s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 801s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 801s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 801s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 801s ok - glib/dbus-appinfo.test 801s # Running test: glib/cxx-2b.test 801s TAP version 14 801s # random seed: R02Sa3338f21516c4bdd29f2600fc34aee04 801s 1..2 801s # Start of gtask tests 801s # 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. 801s ok 1 /gtask/name 801s # Start of name tests 801s # 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. 801s ok 2 /gtask/name/macro-wrapper 801s # End of name tests 801s # End of gtask tests 801s ok - glib/cxx-2b.test 801s # Running test: glib/pollable.test 801s TAP version 14 801s # random seed: R02S066f4e963b863e5cfc148fcfae9969cf 801s 1..6 801s # Start of pollable tests 801s ok 1 /pollable/converter 801s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver? 801s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xc40c447cdac0 and GSocketClientAsyncConnectData 0xc40c447c9c10 801s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 801s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 801s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xc40c447d2a00 for GSocketClientAsyncConnectData 0xc40c447c9c10 801s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 801s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 801s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 801s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 801s ok 2 /pollable/socket 801s # Start of unix tests 801s # /pollable/unix/pipe summary: Test that pipes are considered pollable, just like sockets 801s ok 3 /pollable/unix/pipe 801s # /pollable/unix/pty summary: Test that PTYs are considered pollable 801s ok 4 /pollable/unix/pty 801s # /pollable/unix/file summary: Test that regular files are not considered pollable 801s ok 5 /pollable/unix/file 801s # /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 801s ok 6 /pollable/unix/nulldev 801s # End of unix tests 801s # End of pollable tests 801s ok - glib/pollable.test 801s # Running test: glib/win32-appinfo.test 801s TAP version 14 801s # random seed: R02Sd189ae3fc7f36f79a7da51a2d2ce487d 801s 1..5 801s # Start of appinfo tests 801s ok 1 /appinfo/utf16-strfuncs 801s ok 2 /appinfo/win32-extract-executable 801s ok 3 /appinfo/win32-rundll32-fixup 801s ok 4 /appinfo/win32-parse-filename 801s ok 5 /appinfo/win32-utf16-conversion-fail 801s # Start of subprocess tests 801s # End of subprocess tests 801s # End of appinfo tests 801s ok - glib/win32-appinfo.test 801s # Running test: glib/sandbox.test 801s TAP version 14 801s # random seed: R02S5270f8fe27938c75e4ec915a1832ebef 801s 1..4 801s # Start of sandbox tests 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_sandbox_3RD752/sandbox/none/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_sandbox_3RD752/sandbox/none/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_sandbox_3RD752/sandbox/none/.dirs/system-config1:/tmp/test_sandbox_3RD752/sandbox/none/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_sandbox_3RD752/sandbox/none/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_sandbox_3RD752/sandbox/none/.dirs/system-data1:/tmp/test_sandbox_3RD752/sandbox/none/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_sandbox_3RD752/sandbox/none/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_sandbox_3RD752/sandbox/none/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_sandbox_3RD752/sandbox/none/.dirs/runtime 801s ok 1 /sandbox/none 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_sandbox_3RD752/sandbox/snap/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_sandbox_3RD752/sandbox/snap/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_sandbox_3RD752/sandbox/snap/.dirs/system-config1:/tmp/test_sandbox_3RD752/sandbox/snap/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_sandbox_3RD752/sandbox/snap/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_sandbox_3RD752/sandbox/snap/.dirs/system-data1:/tmp/test_sandbox_3RD752/sandbox/snap/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_sandbox_3RD752/sandbox/snap/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_sandbox_3RD752/sandbox/snap/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_sandbox_3RD752/sandbox/snap/.dirs/runtime 801s # Created snap.yaml in /tmp/test_sandbox_3RD752/snap/current/meta/snap.yaml 801s ok 2 /sandbox/snap 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/system-config1:/tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/system-data1:/tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_sandbox_3RD752/sandbox/classic-snap/.dirs/runtime 801s # Created snap.yaml in /tmp/test_sandbox_3RD752/snap/current/meta/snap.yaml 801s ok 3 /sandbox/classic-snap 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/system-config1:/tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/system-data1:/tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/runtime 801s # Creating .flatpak-info in /tmp/test_sandbox_3RD752/sandbox/flatpak/.dirs/runtime/.flatpak-info 801s ok 4 /sandbox/flatpak 801s # End of sandbox tests 801s ok - glib/sandbox.test 801s # Running test: glib/function-info.test 801s TAP version 14 801s # random seed: R02Sf32bc86af1faf2ef2598f05bc1dff49e 801s 1..1 801s # Start of function-info tests 801s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_function-info_ENR652/function-info/invoker/.dirs/home 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_function-info_ENR652/function-info/invoker/.dirs/cache 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_function-info_ENR652/function-info/invoker/.dirs/system-config1:/tmp/test_function-info_ENR652/function-info/invoker/.dirs/system-config2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_function-info_ENR652/function-info/invoker/.dirs/config 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_function-info_ENR652/function-info/invoker/.dirs/system-data1:/tmp/test_function-info_ENR652/function-info/invoker/.dirs/system-data2 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_function-info_ENR652/function-info/invoker/.dirs/data 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_function-info_ENR652/function-info/invoker/.dirs/state 801s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_function-info_ENR652/function-info/invoker/.dirs/runtime 801s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 801s # /function-info/invoker summary: Test preparing a function invoker 801s ok 1 /function-info/invoker 801s # End of function-info tests 801s ok - glib/function-info.test 801s # Running test: glib/objects-refcount2.test 801s TAP version 14 801s # random seed: R02S7638536241558160ba8d483f5f1566d7 801s 1..1 801s # Start of gobject tests 801s # Start of refcount tests 801s # init 0xc241c3110400 801s # 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 801s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 802s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 803s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 804s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # Executing: glib/objects-refcount2.test 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 805s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 806s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # . 807s # dispose 0xc241c3110400! 807s # 807s ok 1 /gobject/refcount/object-advanced 807s # slow test /gobject/refcount/object-advanced executed in 6.11 secs 807s # End of refcount tests 807s # End of gobject tests 807s ok - glib/objects-refcount2.test 807s # Running test: glib/actions.test 807s TAP version 14 807s # random seed: R02Sd5f1e85d6d0c0cc539e3deb841c1944c 807s 1..13 807s # Start of actions tests 807s ok 1 /actions/basic 807s ok 2 /actions/name 807s ok 3 /actions/simplegroup 807s ok 4 /actions/stateful 807s ok 5 /actions/default-activate 807s ok 6 /actions/entries 807s ok 7 /actions/parse-detailed 807s ok 8 /actions/property 807s ok 9 /actions/no-properties 807s # Start of dbus tests 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s ok 10 /actions/dbus/export 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 807s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s ok 11 /actions/dbus/threaded 808s # slow test /actions/dbus/threaded executed in 1.19 secs 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s ok 12 /actions/dbus/bug679509 808s # Start of export tests 808s # /actions/dbus/export/error-handling summary: Test that error handling of action group export failure works 808s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3366 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 808s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 809s ok - glib/actions.test 809s # Running test: glib/markup-parse.test 809s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 809s ok 13 /actions/dbus/export/error-handling 809s # End of export tests 809s # End of dbus tests 809s # End of actions tests 809s TAP version 14 809s # random seed: R02Sd1e2385cfe506716d8ce275f0008dc3a 809s 1..71 809s # Start of markup tests 809s # Start of parse tests 809s ok 1 /markup/parse/fail-49.gmarkup 809s ok 2 /markup/parse/fail-46.gmarkup 809s ok 3 /markup/parse/fail-25.gmarkup 809s ok 4 /markup/parse/valid-13.gmarkup 809s ok 5 /markup/parse/fail-16.gmarkup 809s ok 6 /markup/parse/fail-38.gmarkup 809s ok 7 /markup/parse/fail-19.gmarkup 809s ok 8 /markup/parse/fail-10.gmarkup 809s ok 9 /markup/parse/fail-8.gmarkup 809s ok 10 /markup/parse/fail-30.gmarkup 809s ok 11 /markup/parse/fail-13.gmarkup 809s ok 12 /markup/parse/valid-12.gmarkup 809s ok 13 /markup/parse/valid-17.gmarkup 809s ok 14 /markup/parse/valid-3.gmarkup 809s ok 15 /markup/parse/valid-1.gmarkup 809s ok 16 /markup/parse/valid-7.gmarkup 809s ok 17 /markup/parse/fail-43.gmarkup 809s ok 18 /markup/parse/fail-42.gmarkup 809s ok 19 /markup/parse/valid-6.gmarkup 809s ok 20 /markup/parse/valid-11.gmarkup 809s ok 21 /markup/parse/fail-27.gmarkup 809s ok 22 /markup/parse/fail-1.gmarkup 809s ok 23 /markup/parse/fail-4.gmarkup 809s ok 24 /markup/parse/fail-12.gmarkup 809s ok 25 /markup/parse/fail-34.gmarkup 809s ok 26 /markup/parse/fail-53.gmarkup 809s ok 27 /markup/parse/valid-8.gmarkup 809s ok 28 /markup/parse/valid-9.gmarkup 809s ok 29 /markup/parse/fail-15.gmarkup 809s ok 30 /markup/parse/fail-45.gmarkup 809s ok 31 /markup/parse/valid-5.gmarkup 809s ok 32 /markup/parse/fail-31.gmarkup 809s ok 33 /markup/parse/fail-51.gmarkup 809s ok 34 /markup/parse/valid-16.gmarkup 809s ok 35 /markup/parse/fail-36.gmarkup 809s ok 36 /markup/parse/fail-41.gmarkup 809s ok 37 /markup/parse/fail-22.gmarkup 809s ok 38 /markup/parse/fail-39.gmarkup 809s ok 39 /markup/parse/fail-48.gmarkup 809s ok - glib/markup-parse.test 809s # Running test: glib/gdbus-peer.test 809s ok 40 /markup/parse/fail-54.gmarkup 809s ok 41 /markup/parse/fail-28.gmarkup 809s ok 42 /markup/parse/fail-47.gmarkup 809s ok 43 /markup/parse/fail-5.gmarkup 809s ok 44 /markup/parse/fail-33.gmarkup 809s ok 45 /markup/parse/fail-17.gmarkup 809s ok 46 /markup/parse/fail-44.gmarkup 809s ok 47 /markup/parse/fail-29.gmarkup 809s ok 48 /markup/parse/valid-2.gmarkup 809s ok 49 /markup/parse/fail-9.gmarkup 809s ok 50 /markup/parse/valid-10.gmarkup 809s ok 51 /markup/parse/fail-3.gmarkup 809s ok 52 /markup/parse/fail-37.gmarkup 809s ok 53 /markup/parse/valid-4.gmarkup 809s ok 54 /markup/parse/fail-40.gmarkup 809s ok 55 /markup/parse/fail-18.gmarkup 809s ok 56 /markup/parse/fail-6.gmarkup 809s ok 57 /markup/parse/fail-21.gmarkup 809s ok 58 /markup/parse/fail-50.gmarkup 809s ok 59 /markup/parse/fail-2.gmarkup 809s ok 60 /markup/parse/fail-24.gmarkup 809s ok 61 /markup/parse/fail-26.gmarkup 809s ok 62 /markup/parse/fail-7.gmarkup 809s ok 63 /markup/parse/valid-15.gmarkup 809s ok 64 /markup/parse/fail-52.gmarkup 809s ok 65 /markup/parse/fail-11.gmarkup 809s ok 66 /markup/parse/fail-35.gmarkup 809s ok 67 /markup/parse/fail-23.gmarkup 809s ok 68 /markup/parse/valid-14.gmarkup 809s ok 69 /markup/parse/fail-32.gmarkup 809s ok 70 /markup/parse/fail-20.gmarkup 809s ok 71 /markup/parse/fail-14.gmarkup 809s # End of parse tests 809s # End of markup tests 809s TAP version 14 809s # random seed: R02Sc5424738fab511bc75aecf4814cd6617 809s 1..12 809s # Start of gdbus tests 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/.dirs/runtime 809s # Testing with unix:dir address 809s # Testing with unix:tmpdir address 809s # Testing with unix:path address 809s ok 1 /gdbus/peer-to-peer 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/delayed-message-processing/.dirs/runtime 809s # Testing with unix:dir address 809s ok 2 /gdbus/delayed-message-processing 809s # slow test /gdbus/delayed-message-processing executed in 0.51 secs 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/nonce-tcp/.dirs/runtime 809s ok 3 /gdbus/nonce-tcp 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/tcp-anonymous/.dirs/runtime 809s ok 4 /gdbus/tcp-anonymous 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/credentials/.dirs/runtime 809s ok 5 /gdbus/credentials 809s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/home 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/cache 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/system-config2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/config 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/system-data2 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/data 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/state 809s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/codegen-peer-to-peer/.dirs/runtime 809s # Testing with unix:dir address 809s # Machine ID: 2a33f4becfe44ebf9311c16f6c292654 810s # Executing: glib/gdbus-peer.test 810s ok 6 /gdbus/codegen-peer-to-peer 810s # slow test /gdbus/codegen-peer-to-peer executed in 1.11 secs 810s # Start of peer-to-peer tests 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/signals/.dirs/runtime 810s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1620 810s # Testing with unix:dir address 810s ok 7 /gdbus/peer-to-peer/signals 810s # Start of invalid tests 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/server/.dirs/runtime 810s ok 8 /gdbus/peer-to-peer/invalid/server 810s # Start of conn tests 810s # Start of stream tests 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/async/.dirs/runtime 810s ok 9 /gdbus/peer-to-peer/invalid/conn/stream/async 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/stream/sync/.dirs/runtime 810s ok 10 /gdbus/peer-to-peer/invalid/conn/stream/sync 810s # End of stream tests 810s # Start of addr tests 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/async/.dirs/runtime 810s ok 11 /gdbus/peer-to-peer/invalid/conn/addr/async 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-config1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-data1:/tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-peer_ZNIU52/gdbus/peer-to-peer/invalid/conn/addr/sync/.dirs/runtime 810s ok - glib/gdbus-peer.test 810s # Running test: glib/live-g-file.test 810s ok 12 /gdbus/peer-to-peer/invalid/conn/addr/sync 810s # End of addr tests 810s # End of conn tests 810s # End of invalid tests 810s # End of peer-to-peer tests 810s # End of gdbus tests 810s TAP version 14 810s # random seed: R02S076767c9269cfb5b55db128094450743 810s 1..13 810s # Start of live-g-file tests 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/prep_clean_structure/.dirs/runtime 810s # Cleaning target testing structure in '/tmp/test_live-g-file_UTG452/testdir_live-g-file'... 810s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 810s ok 1 /live-g-file/prep_clean_structure 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/create_structure/.dirs/runtime 810s # 810s # Going to create testing structure in '/tmp/test_live-g-file_UTG452/testdir_live-g-file'... 810s # Creating directory 'dir1'... 810s # Creating directory 'dir1/subdir'... 810s # Creating directory 'dir2'... 810s # Creating directory 'dir-target'... 810s # Creating directory 'dir_no-access'... 810s # Creating directory 'dir_no-write'... 810s # Creating file 'target-file'... 810s # Creating file 'normal_file'... 810s # Creating symlink 'normal_file-symlink' --> 'normal_file'... 810s # Creating file 'executable_file'... 810s # Creating file 'private_file'... 810s # Creating file 'normal_file2'... 810s # Creating file 'readonly_file'... 810s # Creating file 'UTF_pr?i?lis? z'... 810s # Creating directory 'dir_pr?i?lis? z'... 810s # Creating symlink 'lost_symlink' --> 'nowhere'... 810s # Creating directory 'dir_hidden'... 810s # Creating file 'dir_hidden/.a-hidden-file'... 810s # Creating file 'dir_hidden/file-in-.hidden1'... 810s # Creating file 'dir_hidden/file-in-.hidden2'... 810s # Creating pattern file... 810s # done. 810s ok 2 /live-g-file/create_structure 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_initial_structure/.dirs/runtime 810s # Testing sample structure in '/tmp/test_live-g-file_UTG452/testdir_live-g-file'... 810s # Testing file 'dir1'... 810s # Testing file 'dir1/subdir'... 810s # Testing file 'dir2'... 810s # Testing file 'dir-target'... 810s # Testing file 'dir_no-access'... 810s # Testing file 'dir_no-write'... 810s # Testing file 'target-file'... 810s # Testing file 'normal_file'... 810s # Testing file 'normal_file-symlink'... 810s # Testing file 'executable_file'... 810s # Testing file 'private_file'... 810s # Testing file 'normal_file2'... 810s # Testing file 'readonly_file'... 810s # Testing file 'UTF_pr?i?lis? z'... 810s # Testing file 'dir_pr?i?lis? z'... 810s # Testing file 'lost_symlink'... 810s # Testing file 'dir_hidden'... 810s # Testing file 'dir_hidden/.a-hidden-file'... 810s # Testing file 'dir_hidden/file-in-.hidden1'... 810s # Testing file 'dir_hidden/file-in-.hidden2'... 810s # Testing pattern file... 810s # read 65536 bytes, total = 65536 of 65536. 810s ok 3 /live-g-file/test_initial_structure 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_traverse_structure/.dirs/runtime 810s # Traversing through the sample structure in '/tmp/test_live-g-file_UTG452/testdir_live-g-file'... 810s # Found file dir1, relative to root: dir1 810s # Found file subdir, relative to root: dir1/subdir 810s # Found file dir2, relative to root: dir2 810s # Found file dir-target, relative to root: dir-target 810s # Found file dir_no-access, relative to root: dir_no-access 810s # Found file dir_no-write, relative to root: dir_no-write 810s # Found file target-file, relative to root: target-file 810s # Found file normal_file, relative to root: normal_file 810s # Found file normal_file-symlink, relative to root: normal_file-symlink 810s # Found file executable_file, relative to root: executable_file 810s # Found file private_file, relative to root: private_file 810s # Found file normal_file2, relative to root: normal_file2 810s # Found file readonly_file, relative to root: readonly_file 810s # Found file UTF_pr?i?lis? z, relative to root: UTF_pr?i?lis? z 810s # Found file dir_pr?i?lis? z, relative to root: dir_pr?i?lis? z 810s # Found file lost_symlink, relative to root: lost_symlink 810s # Found file dir_hidden, relative to root: dir_hidden 810s # Found file .a-hidden-file, relative to root: dir_hidden/.a-hidden-file 810s # Found file file-in-.hidden1, relative to root: dir_hidden/file-in-.hidden1 810s # Found file .hidden, relative to root: dir_hidden/.hidden 810s # Found file file-in-.hidden2, relative to root: dir_hidden/file-in-.hidden2 810s # Found file pattern_file, relative to root: pattern_file 810s ok 4 /live-g-file/test_traverse_structure 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_enumerate/.dirs/runtime 810s # Test enumerate '/tmp/test_live-g-file_UTG452/testdir_live-g-file'... 810s # Testing file 'dir_no-access' 810s # Testing file 'normal_file' 810s # Testing file 'normal_file-symlink' 810s # Testing file 'not_exists' 810s # Testing file 'not_exists' 810s # Testing file 'not_exists2' 810s # Testing file 'not_exists3' 810s # Testing file 'not_exists4' 810s # Testing file 'dir_no-execute/file' 810s ok 5 /live-g-file/test_enumerate 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_open/.dirs/runtime 810s # test_open: 'dir1' 810s # test_open: 'dir_no-access' 810s # test_open: 'target-file' 810s # test_open: 'normal_file-symlink' 810s # test_open: 'executable_file' 810s # test_open: 'private_file' 810s # test_open: 'readonly_file' 810s # test_open: 'UTF_pr?i?lis? z' 810s # test_open: 'pattern_file' 810s # test_open: 'not_exists' 810s # test_open: 'dir_no-execute/file' 810s # test_open: 'lost_symlink' 810s ok 6 /live-g-file/test_open 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_create/.dirs/runtime 810s # test_create: 'dir1' 810s # error code 3 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir1?: Is a directory 810s # test_create: 'dir1/subdir' 810s # error code 3 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir1/subdir?: Is a directory 810s # test_create: 'dir2' 810s # error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir2?: File exists 810s # test_create: 'normal_file' 810s # error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/normal_file?: File exists 810s # test_create: 'executable_file' 810s # test_create: 'private_file' 810s # test_create: 'normal_file2' 810s # test_create: 'UTF_pr?i?lis? z' 810s # error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/UTF_pr?i?lis? z?: File exists 810s # test_create: 'dir_pr?i?lis? z' 810s # error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_pr?i?lis? z?: File exists 810s # test_create: 'pattern_file' 810s # test_create: 'not_exists2' 810s # test_create: 'not_exists3' 810s # test_create: 'not_exists4' 810s ok 7 /live-g-file/test_create 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_copy_move/.dirs/runtime 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir1/subdir' --> 'dir-target' 810s # res = 0, error code 25 = Can?t recursively copy directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir1/subdir' --> '.' 810s # res = 0, error code 2 = Target file exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir1/subdir' --> 'target-file' 810s # res = 0, error code 4 = Error when getting information for file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/dir1/subdir?: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir1/subdir' --> 'not_exists' 810s # res = 0, error code 25 = Can?t recursively copy directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir1/subdir' --> 'dir_no-access' 810s # res = 0, error code 25 = Can?t recursively copy directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir1/subdir' --> 'dir_no-write' 810s # res = 0, error code 25 = Can?t recursively copy directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir2' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir-target' --> 'dir-target' 810s # res = 0, error code 25 = Can?t recursively copy directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir-target' --> '.' 810s # res = 0, error code 2 = Target file exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir-target' --> 'target-file' 810s # res = 0, error code 4 = Error when getting information for file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/dir-target?: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir-target' --> 'not_exists' 810s # res = 0, error code 25 = Can?t recursively copy directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir-target' --> 'dir_no-access' 810s # res = 0, error code 25 = Can?t recursively copy directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'dir-target' --> 'dir_no-write' 810s # res = 0, error code 25 = Can?t recursively copy directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'target-file' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'target-file' --> '.' 810s # res = 0, error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file?: File exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'target-file' --> 'target-file' 810s # res = 0, error code 4 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/target-file?: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'target-file' --> 'not_exists' 810s # res = 0, error code 1 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists/target-file?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'target-file' --> 'dir_no-access' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-access/target-file?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'target-file' --> 'dir_no-write' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-write/target-file?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file-symlink' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file-symlink' --> '.' 810s # res = 0, error code 2 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/normal_file-symlink: File exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file-symlink' --> 'target-file' 810s # res = 0, error code 4 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/normal_file-symlink: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file-symlink' --> 'not_exists' 810s # res = 0, error code 1 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists/normal_file-symlink: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file-symlink' --> 'dir_no-access' 810s # res = 0, error code 14 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-access/normal_file-symlink: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file-symlink' --> 'dir_no-write' 810s # res = 0, error code 14 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-write/normal_file-symlink: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'executable_file' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'executable_file' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'executable_file' --> '.' 810s # res = 0, error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/executable_file?: File exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'executable_file' --> 'target-file' 810s # res = 0, error code 4 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/executable_file?: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'executable_file' --> 'not_exists' 810s # res = 0, error code 1 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists/executable_file?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'executable_file' --> 'dir_no-access' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-access/executable_file?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'executable_file' --> 'dir_no-write' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-write/executable_file?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'private_file' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'private_file' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'private_file' --> '.' 810s # res = 0, error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/private_file?: File exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'private_file' --> 'target-file' 810s # res = 0, error code 4 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/private_file?: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'private_file' --> 'not_exists' 810s # res = 0, error code 1 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists/private_file?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'private_file' --> 'dir_no-access' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-access/private_file?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'private_file' --> 'dir_no-write' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-write/private_file?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file2' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file2' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file2' --> '.' 810s # res = 0, error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/normal_file2?: File exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file2' --> 'target-file' 810s # res = 0, error code 4 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/normal_file2?: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file2' --> 'not_exists' 810s # res = 0, error code 1 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists/normal_file2?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file2' --> 'dir_no-access' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-access/normal_file2?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'normal_file2' --> 'dir_no-write' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-write/normal_file2?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'UTF_pr?i?lis? z' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'UTF_pr?i?lis? z' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'UTF_pr?i?lis? z' --> '.' 810s # res = 0, error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/UTF_pr?i?lis? z?: File exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'UTF_pr?i?lis? z' --> 'target-file' 810s # res = 0, error code 4 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/UTF_pr?i?lis? z?: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'UTF_pr?i?lis? z' --> 'not_exists' 810s # res = 0, error code 1 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists/UTF_pr?i?lis? z?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'UTF_pr?i?lis? z' --> 'dir_no-access' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-access/UTF_pr?i?lis? z?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'UTF_pr?i?lis? z' --> 'dir_no-write' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-write/UTF_pr?i?lis? z?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'pattern_file' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'pattern_file' --> '.' 810s # res = 0, error code 2 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/pattern_file?: File exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'pattern_file' --> 'target-file' 810s # res = 0, error code 4 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/pattern_file?: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'pattern_file' --> 'not_exists' 810s # res = 0, error code 1 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists/pattern_file?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'pattern_file' --> 'dir_no-access' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-access/pattern_file?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'pattern_file' --> 'dir_no-write' 810s # res = 0, error code 14 = Error opening file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-write/pattern_file?: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'not_exists' --> 'dir-target' 810s # res = 0, error code 1 = Error when getting information for file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'not_exists' --> '.' 810s # res = 0, error code 1 = Error when getting information for file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'not_exists' --> 'target-file' 810s # res = 0, error code 1 = Error when getting information for file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'not_exists' --> 'not_exists' 810s # res = 0, error code 1 = Error when getting information for file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'not_exists' --> 'dir_no-access' 810s # res = 0, error code 1 = Error when getting information for file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'not_exists' --> 'dir_no-write' 810s # res = 0, error code 1 = Error when getting information for file ?/tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists?: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'not_exists' --> 'dir-target' 810s # res = 0, error code 1 = Error moving file /tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'lost_symlink' --> 'dir-target' 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'lost_symlink' --> '.' 810s # res = 0, error code 2 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/lost_symlink: File exists 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'lost_symlink' --> 'target-file' 810s # res = 0, error code 4 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/target-file/lost_symlink: Not a directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'lost_symlink' --> 'not_exists' 810s # res = 0, error code 1 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists/lost_symlink: No such file or directory 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'lost_symlink' --> 'dir_no-access' 810s # res = 0, error code 14 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-access/lost_symlink: Permission denied 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s # do_copy_move: 'lost_symlink' --> 'dir_no-write' 810s # res = 0, error code 14 = Error making symbolic link /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-write/lost_symlink: Permission denied 810s ok 8 /live-g-file/test_copy_move 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_delete/.dirs/runtime 810s # Deleting dir1, path = /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir1 810s # result = 0, error = Error removing file /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir1: Directory not empty 810s # Deleting dir2, path = /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir2 810s # result = 0, error = Error removing file /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir2: No such file or directory 810s # Deleting executable_file, path = /tmp/test_live-g-file_UTG452/testdir_live-g-file/executable_file 810s # result = 0, error = Error trashing file /tmp/test_live-g-file_UTG452/testdir_live-g-file/executable_file: No such file or directory 810s # Deleting readonly_file, path = /tmp/test_live-g-file_UTG452/testdir_live-g-file/readonly_file 810s # Deleting dir_pr?i?lis? z, path = /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_pr?i?lis? z 810s # Deleting not_exists, path = /tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists 810s # result = 0, error = Error removing file /tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists: No such file or directory 810s # Deleting not_exists, path = /tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists 810s # result = 0, error = Error trashing file /tmp/test_live-g-file_UTG452/testdir_live-g-file/not_exists: No such file or directory 810s # Deleting dir_no-execute/file, path = /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-execute/file 810s # result = 0, error = Error removing file /tmp/test_live-g-file_UTG452/testdir_live-g-file/dir_no-execute/file: No such file or directory 810s # Deleting lost_symlink, path = /tmp/test_live-g-file_UTG452/testdir_live-g-file/lost_symlink 810s ok 9 /live-g-file/test_delete 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_make_directory_with_parents/.dirs/runtime 810s # We do not have CAP_DAC_OVERRIDE or equivalent 810s ok 10 /live-g-file/test_make_directory_with_parents 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/final_clean/.dirs/runtime 810s # Cleaning target testing structure in '/tmp/test_live-g-file_UTG452/testdir_live-g-file'... 810s # deleting 'dir1' 810s # deleting 'subdir' 810s # deleting 'dir-target' 810s # deleting 'dir2' 810s # deleting 'target-file' 810s # deleting 'normal_file-symlink' 810s # deleting 'pattern_file' 810s # deleting 'executable_file' 810s # deleting 'private_file' 810s # deleting 'normal_file2' 810s # deleting 'UTF_pr?i?lis? z' 810s # deleting 'lost_symlink' 810s # deleting 'dir_no-access' 810s # deleting 'dir_no-write' 810s # deleting 'target-file' 810s # deleting 'normal_file' 810s # deleting 'normal_file-symlink' 810s # deleting 'executable_file~' 810s # deleting 'private_file' 810s # deleting 'normal_file2~' 810s # deleting 'a' 810s # deleting 'UTF_pr?i?lis? z' 810s # deleting 'dir_hidden' 810s # deleting '.a-hidden-file' 810s # deleting 'file-in-.hidden1' 810s # deleting '.hidden' 810s # deleting 'file-in-.hidden2' 810s # deleting 'pattern_file' 810s # deleting 'executable_file' 810s # deleting 'normal_file2' 810s ok - glib/live-g-file.test 810s # Running test: glib/references.test 810s ok - glib/references.test 810s # Running test: glib/keyfile.test 810s # deleting 'not_exists2' 810s # deleting 'not_exists3' 810s # deleting 'not_exists4' 810s ok 11 /live-g-file/final_clean 810s # Start of test_unix_is_mountpoint tests 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/sysroot/.dirs/runtime 810s ok 12 /live-g-file/test_unix_is_mountpoint/sysroot 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/system-config1:/tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/system-data1:/tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_live-g-file_UTG452/live-g-file/test_unix_is_mountpoint/proc/.dirs/runtime 810s ok 13 /live-g-file/test_unix_is_mountpoint/proc 810s # End of test_unix_is_mountpoint tests 810s # End of live-g-file tests 810s TAP version 14 810s # random seed: R02S05dddc4f9e0e7931e914c02a0993bc0b 810s 1..1 810s # Start of gobject tests 810s ok 1 /gobject/references 810s # End of gobject tests 810s TAP version 14 810s # random seed: R02Sca75a1767c02be97c8d5fe5f63c786b0 810s 1..36 810s # Start of keyfile tests 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/line-ends/.dirs/runtime 810s ok 1 /keyfile/line-ends 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/whitespace/.dirs/runtime 810s ok 2 /keyfile/whitespace 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/comments/.dirs/runtime 810s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3047 810s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/104 810s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3047 810s ok 3 /keyfile/comments 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/listing/.dirs/runtime 810s ok 4 /keyfile/listing 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/string/.dirs/runtime 810s ok 5 /keyfile/string 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/boolean/.dirs/runtime 810s ok 6 /keyfile/boolean 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/number/.dirs/runtime 810s ok 7 /keyfile/number 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/.dirs/runtime 810s ok 8 /keyfile/locale-string 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/lists/.dirs/runtime 810s ok 9 /keyfile/lists 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/lists-set-get/.dirs/runtime 810s ok 10 /keyfile/lists-set-get 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/group-remove/.dirs/runtime 810s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=165887 810s ok 11 /keyfile/group-remove 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/key-remove/.dirs/runtime 810s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=165980 810s ok 12 /keyfile/key-remove 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/groups/.dirs/runtime 810s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=316309 810s ok 13 /keyfile/groups 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-keys/.dirs/runtime 810s ok 14 /keyfile/duplicate-keys 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups/.dirs/runtime 810s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=157877 810s ok 15 /keyfile/duplicate-groups 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/duplicate-groups2/.dirs/runtime 810s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=385910 810s ok 16 /keyfile/duplicate-groups2 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/group-names/.dirs/runtime 810s ok 17 /keyfile/group-names 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/key-names/.dirs/runtime 810s ok 18 /keyfile/key-names 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/reload/.dirs/runtime 810s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=420686 810s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2927 810s ok 19 /keyfile/reload 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/int64/.dirs/runtime 810s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=614864 810s ok 20 /keyfile/int64 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/load/.dirs/runtime 810s ok 21 /keyfile/load 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/save/.dirs/runtime 810s ok 22 /keyfile/save 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/load-fail/.dirs/runtime 810s ok 23 /keyfile/load-fail 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/non-utf8/.dirs/runtime 810s ok 24 /keyfile/non-utf8 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/page-boundary/.dirs/runtime 810s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=640695 810s ok 25 /keyfile/page-boundary 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/ref/.dirs/runtime 810s ok 26 /keyfile/ref 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/replace-value/.dirs/runtime 810s ok 27 /keyfile/replace-value 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/list-separator/.dirs/runtime 810s ok 28 /keyfile/list-separator 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/empty-string/.dirs/runtime 810s ok 29 /keyfile/empty-string 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/limbo/.dirs/runtime 810s ok 30 /keyfile/limbo 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/utf8/.dirs/runtime 810s # Testing invalid encoding ?non-UTF-8? 810s # Testing invalid encoding ?UTF? 810s # Testing invalid encoding ?UTF-9? 810s ok 31 /keyfile/utf8 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/roundtrip/.dirs/runtime 810s ok 32 /keyfile/roundtrip 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/bytes/.dirs/runtime 810s ok 33 /keyfile/bytes 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/get-locale/.dirs/runtime 810s ok 34 /keyfile/get-locale 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/free-when-not-last-ref/.dirs/runtime 810s ok 35 /keyfile/free-when-not-last-ref 810s # Start of locale-string tests 810s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/home 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/cache 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/system-config1:/tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/system-config2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/config 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/system-data1:/tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/system-data2 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/data 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/state 810s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_keyfile_XZ9B62/keyfile/locale-string/multiple-loads/.dirs/runtime 810s # /keyfile/locale-string/multiple-loads summary: Check that loading with translations multiple times works 810s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2361 810s ok 36 /keyfile/locale-string/multiple-loads 810s # End of locale-string tests 810s # End of keyfile tests 810s TAP version 14 810s # random seed: R02S22e38b442587380531061086ba1847ea 810s 1..2 810s # Start of atomic tests 810s ok 1 /atomic/types 810s ok - glib/keyfile.test 810s # Running test: glib/atomic-c-99.test 810s ok - glib/atomic-c-99.test 810s ok 2 /atomic/threaded 810s # End of atomic tests 810s # Running test: glib/g-icon.test 810s TAP version 14 810s # random seed: R02S27aebeae313138cb55c74cb8c7558634 810s 1..6 810s # Start of icons tests 810s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 810s ok 1 /icons/to-string 810s ok 2 /icons/serialize 810s ok 3 /icons/themed 810s ok 4 /icons/emblemed 810s ok 5 /icons/file 810s ok 6 /icons/bytes 810s # End of icons tests 810s ok - glib/g-icon.test 810s TAP version 14 810s # random seed: R02S839d0d8c33ddc9664190bac982c468a9 810s 1..20 810s # Start of glib-unix tests 810s # /glib-unix/closefrom summary: Test g_closefrom(), g_fdwalk_set_cloexec() 810s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3247 810s # Running test: glib/unix.test 810s ok 1 /glib-unix/closefrom 810s ok 2 /glib-unix/pipe 810s # /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 810s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2795 810s ok 3 /glib-unix/pipe-stdio-overwrite 810s # /glib-unix/pipe-struct summary: Test GUnixPipe structure 810s ok 4 /glib-unix/pipe-struct 810s # /glib-unix/pipe-struct-auto summary: Test g_auto(GUnixPipe) 810s ok 5 /glib-unix/pipe-struct-auto 810s ok 6 /glib-unix/error 810s ok 7 /glib-unix/nonblocking 811s ok 8 /glib-unix/sighup 811s # slow test /glib-unix/sighup executed in 0.50 secs 811s ok 9 /glib-unix/sigterm 811s # slow test /glib-unix/sigterm executed in 0.50 secs 812s ok 10 /glib-unix/sighup_again 812s # slow test /glib-unix/sighup_again executed in 0.50 secs 812s ok 11 /glib-unix/sighup_add_remove 812s ok 12 /glib-unix/sighup_nested 814s ok 13 /glib-unix/callback_after_signal 814s # slow test /glib-unix/callback_after_signal executed in 2.00 secs 814s ok 14 /glib-unix/child-wait 814s # Start of closefrom tests 814s # Start of subprocess tests 814s # End of subprocess tests 814s # End of closefrom tests 814s # Start of pipe tests 814s # /glib-unix/pipe/fd-cloexec summary: Test that FD_CLOEXEC is still accepted as an argument to g_unix_open_pipe() 814s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3459 814s # GLib-DEBUG: g_unix_open_pipe() called with FD_CLOEXEC; please migrate to using O_CLOEXEC instead 814s ok 15 /glib-unix/pipe/fd-cloexec 814s # End of pipe tests 814s # Start of sighup tests 815s # Executing: glib/unix.test 815s ok 16 /glib-unix/sighup/alternate-stack 815s # slow test /glib-unix/sighup/alternate-stack executed in 1.00 secs 815s # End of sighup tests 815s # Start of sigterm tests 816s ok 17 /glib-unix/sigterm/alternate-stack 816s # slow test /glib-unix/sigterm/alternate-stack executed in 1.00 secs 816s # End of sigterm tests 816s # Start of sighup_again tests 817s ok 18 /glib-unix/sighup_again/alternate-stack 817s # slow test /glib-unix/sighup_again/alternate-stack executed in 1.00 secs 817s # End of sighup_again tests 817s # Start of get-passwd-entry tests 817s # /glib-unix/get-passwd-entry/root summary: Tests that g_unix_get_passwd_entry() works for a known-existing username. 817s ok 19 /glib-unix/get-passwd-entry/root 817s # /glib-unix/get-passwd-entry/nonexistent summary: Tests that g_unix_get_passwd_entry() returns an error for a nonexistent username. 817s ok 20 /glib-unix/get-passwd-entry/nonexistent 817s # End of get-passwd-entry tests 817s # End of glib-unix tests 817s ok - glib/unix.test 817s # Running test: glib/singleton.test 817s TAP version 14 817s # random seed: R02Saa60e07444d9e5bf1a3e7f0c00db9193 817s 1..2 817s # Start of gobject tests 817s # Start of singleton tests 817s ok 1 /gobject/singleton/construction 817s # /gobject/singleton/construct-property summary: Test that creating a singleton with a construct-time property works 817s ok - glib/singleton.test 817s # Running test: glib/atomic.test 817s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2666 817s ok 2 /gobject/singleton/construct-property 817s # End of singleton tests 817s # End of gobject tests 817s TAP version 14 817s # random seed: R02S09966243171fcc5d1aee26df5045d987 817s 1..2 817s # Start of atomic tests 817s ok 1 /atomic/types 817s ok 2 /atomic/threaded 817s # End of atomic tests 817s TAP version 14 817s # random seed: R02S95f715ae4f2e609d89c45fa4d9740126 817s ok - glib/atomic.test 817s # Running test: glib/gdbus-introspection.test 817s 1..4 817s # Start of gdbus tests 817s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/home 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/cache 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/system-config1:/tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/system-config2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/config 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/system-data1:/tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/system-data2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/data 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/state 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-parser/.dirs/runtime 817s ok 1 /gdbus/introspection-parser 817s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/home 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/cache 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/system-config1:/tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/system-config2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/config 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/system-data1:/tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/system-data2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/data 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/state 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-generate/.dirs/runtime 817s ok 2 /gdbus/introspection-generate 817s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/home 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/cache 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/system-config1:/tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/system-config2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/config 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/system-data1:/tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/system-data2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/data 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/state 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-default-direction/.dirs/runtime 817s ok 3 /gdbus/introspection-default-direction 817s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/home 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/cache 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/system-config1:/tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/system-config2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/config 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/system-data1:/tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/system-data2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/data 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/state 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-introspection_9CG652/gdbus/introspection-extra-data/.dirs/runtime 817s ok 4 /gdbus/introspection-extra-data 817s # End of gdbus tests 817s ok - glib/gdbus-introspection.test 817s # Running test: glib/mem-overflow.test 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 TAP version 14 817s # random seed: R02Sa1234b912dc32354b057269f17a3916e 817s 1..2 817s # Start of mem tests 817s ok 1 /mem/overflow 817s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=615379 817s ok - glib/mem-overflow.test 817s ok 2 /mem/empty-alloc 817s # Start of overflow tests 817s # Start of subprocess tests 817s # End of subprocess tests 817s # End of overflow tests 817s # Start of empty-alloc tests 817s # End of empty-alloc tests 817s # End of mem tests 817s # Running test: glib/gdbus-connection-slow.test 817s TAP version 14 817s # random seed: R02S6cf8f6a4f03fe110b179ba4328c590a3 817s 1..2 817s # Start of gdbus tests 817s # Start of connection tests 817s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/home 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/cache 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/system-config1:/tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/system-config2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/config 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/system-data1:/tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/system-data2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/data 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/state 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/flush/.dirs/runtime 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 1 /gdbus/connection/flush 817s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/home 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/cache 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/system-config1:/tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/system-config2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/config 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/system-data1:/tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/system-data2 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/data 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/state 817s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-connection-slow_E9Q652/gdbus/connection/large_message/.dirs/runtime 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 # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 818s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 818s ok - glib/gdbus-connection-slow.test 818s # Running test: glib/properties.test 818s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 818s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 818s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 818s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 818s ok 2 /gdbus/connection/large_message 818s # End of connection tests 818s # End of gdbus tests 818s TAP version 14 818s # random seed: R02Seadc2a6a057d452525d886c5f7ec9afe 818s 1..14 818s # Start of properties tests 818s ok 1 /properties/install 818s ok 2 /properties/install-many 818s ok 3 /properties/notify 818s ok 4 /properties/notify-queue 818s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=630357 818s ok 5 /properties/construct 818s # /properties/get-property summary: g_object_get_property() accepts uninitialized, initialized, and transformable values 818s # Test g_object_get_property with an initialized value 818s # Test g_object_get_property with an uninitialized value 818s # Test g_object_get_property with a transformable value 818s ok 6 /properties/get-property 818s ok 7 /properties/testv_with_no_properties 818s ok 8 /properties/testv_with_valid_properties 818s ok 9 /properties/testv_with_invalid_property_type 818s ok 10 /properties/testv_with_invalid_property_names 818s ok 11 /properties/testv_getv 818s ok 12 /properties/testv_notify_queue 818s # Start of notify tests 818s ok 13 /properties/notify/too-many-freezes 818s # End of notify tests 818s # Start of set-property tests 818s # Start of variant tests 818s # /properties/set-property/variant/floating summary: Test that setting a property to a floating variant consumes the reference 818s ok 14 /properties/set-property/variant/floating 818s # End of variant tests 818s # End of set-property tests 818s # End of properties tests 818s ok - glib/properties.test 818s # Running test: glib/tls-database.test 818s ok - glib/tls-database.test 818s # Running test: glib/testing-nonfatal.test 818s ok - glib/testing-nonfatal.test 818s # Running test: glib/gmenumodel.test 818s TAP version 14 818s # random seed: R02S2b2c9a3efa2e97254b62cbcd56aa90a8 818s 1..1 818s # Start of tls-backend tests 818s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation test (GTestTlsBackend) for ?gio-tls-backend? 818s ok 1 /tls-backend/set-default-database 818s # End of tls-backend tests 818s TAP version 14 818s # random seed: R02S2f351feeebe7201f13f79c56353c2716 818s ** 818s 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?") 818s # 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?") 818s TAP version 14 818s # random seed: R02Saa49a7b683d3076a023a8bef071b2934 818s 1..15 818s # Start of gmenu tests 818s ok 1 /gmenu/equality 818s # slow test /gmenu/equality executed in 0.58 secs 819s ok 2 /gmenu/random 819s # slow test /gmenu/random executed in 0.57 secs 819s ok 3 /gmenu/attributes 819s ok 4 /gmenu/links 819s ok 5 /gmenu/mutable 819s ok 6 /gmenu/convenience 819s ok 7 /gmenu/menuitem 819s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/861 819s ok 8 /gmenu/input-validation 819s # Start of dbus tests 820s ok 9 /gmenu/dbus/roundtrip 820s # slow test /gmenu/dbus/roundtrip executed in 1.01 secs 820s # Executing: glib/gmenumodel.test 820s ok 10 /gmenu/dbus/subscriptions 821s ok 11 /gmenu/dbus/threaded 821s # slow test /gmenu/dbus/threaded executed in 0.75 secs 821s # Start of peer tests 822s ok 12 /gmenu/dbus/peer/roundtrip 822s # slow test /gmenu/dbus/peer/roundtrip executed in 1.02 secs 822s ok 13 /gmenu/dbus/peer/subscriptions 822s # End of peer tests 822s # Start of export tests 822s # /gmenu/dbus/export/error-handling summary: Test that error handling of menu model export failure works 822s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3366 822s ok 14 /gmenu/dbus/export/error-handling 822s # End of export tests 822s # End of dbus tests 822s # Start of attributes tests 822s ok 15 /gmenu/attributes/iterate 822s # End of attributes tests 822s # End of gmenu tests 822s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 822s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 822s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 822s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 822s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 822s ok - glib/gmenumodel.test 822s # Running test: glib/logging.test 822s TAP version 14 822s # random seed: R02Sa26298889f622d1a8db1dd780896458f 822s 1..17 822s # Start of logging tests 823s ok 1 /logging/default-handler 823s # slow test /logging/default-handler executed in 0.75 secs 823s ok 2 /logging/warnings 823s ok 3 /logging/fatal-log-mask 823s # bu-DEBUG: message 823s # ba-DEBUG: message 823s # ba-INFO: message 823s ok 4 /logging/set-handler 823s ok 5 /logging/print-handler 823s ok 6 /logging/printerr-handler 823s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=653052 823s # The Log Message Handler 823s # 823s # The Good Fail Message Handler 823s # 823s ok 7 /logging/653052 823s ok 8 /logging/gibberish 823s # Start of default-handler tests 823s # Start of subprocess tests 823s # End of subprocess tests 823s # End of default-handler tests 823s # End of logging tests 823s # Start of structured-logging tests 823s ok - glib/logging.test 823s # Running test: glib/objects-refcount1.test 823s ok 9 /structured-logging/no-state 823s ok 10 /structured-logging/some-state 823s ok 11 /structured-logging/robustness 823s ok 12 /structured-logging/roundtrip1 823s ok 13 /structured-logging/roundtrip2 823s ok 14 /structured-logging/roundtrip3 823s ok 15 /structured-logging/variant1 823s ok 16 /structured-logging/variant2 823s ok 17 /structured-logging/set-writer-func-twice 823s # End of structured-logging tests 823s TAP version 14 823s # random seed: R02S21536e4dc7cb19491cc420ac074c746a 823s 1..1 823s # Start of gobject tests 823s # Start of refcount tests 823s # init 0xb61e389b0d30 823s # 823s # init 0xb61e389a95a0 823s # 825s # Executing: glib/objects-refcount1.test 828s # dispose 0xb61e389b0d30! 828s # 828s # dispose 0xb61e389a95a0! 828s # 828s ok 1 /gobject/refcount/object-basics 828s # slow test /gobject/refcount/object-basics executed in 5.00 secs 828s # End of refcount tests 828s # End of gobject tests 828s ok - glib/objects-refcount1.test 828s # Running test: glib/once.test 828s TAP version 14 828s # random seed: R02S971f29151b9cc6642b8d7a940ce02de8 828s 1..5 828s # Start of once tests 828s # /once/single-threaded summary: Test g_once() usage from a single thread 828s ok 1 /once/single-threaded 828s ok - glib/once.test 828s # Running test: glib/overflow.test 828s ok - glib/overflow.test 828s # Running test: glib/test-printf.test 828s ok - glib/test-printf.test 828s # Running test: glib/cancellable.test 828s # /once/multi-threaded summary: Test g_once() usage from multiple threads 828s ok 2 /once/multi-threaded 828s # End of once tests 828s # Start of once-init tests 828s # /once-init/single-threaded summary: Test g_once_init_{enter,leave}() usage from a single thread 828s ok 3 /once-init/single-threaded 828s # /once-init/multi-threaded summary: Test g_once_init_{enter,leave}() usage from multiple threads 828s ok 4 /once-init/multi-threaded 828s # /once-init/string summary: Test g_once_init_{enter,leave}() usage with a string 828s ok 5 /once-init/string 828s # End of once-init tests 828s TAP version 14 828s # random seed: R02S588414d52f890e128cd34f6545ac201c 828s 1..6 828s # Start of glib tests 828s # Start of checked-math tests 828s ok 1 /glib/checked-math/guint-add 828s ok 2 /glib/checked-math/guint-mul 828s ok 3 /glib/checked-math/guint64-add 828s ok 4 /glib/checked-math/guint64-mul 828s ok 5 /glib/checked-math/gsize-add 828s ok 6 /glib/checked-math/gsize-mul 828s # End of checked-math tests 828s # End of glib tests 828s TAP version 14 828s # random seed: R02S6f50f69c98fde83ba8bcdef7a0f41296 828s 1..22 828s # Start of snprintf tests 828s ok 1 /snprintf/retval-and-trunc 828s ok 2 /snprintf/%d 828s ok 3 /snprintf/%d-invalid 828s ok 4 /snprintf/%o 828s ok 5 /snprintf/%u 828s ok 6 /snprintf/%x 828s ok 7 /snprintf/%X 828s ok 8 /snprintf/%f 828s ok 9 /snprintf/%e 828s ok 10 /snprintf/%c 828s ok 11 /snprintf/%s 828s ok 12 /snprintf/%n 828s ok 13 /snprintf/test-percent 828s ok 14 /snprintf/test-positional-params 828s ok 15 /snprintf/test-64bit 828s # End of snprintf tests 828s # Start of printf tests 828s ok 16 /printf/test-percent 828s ok 17 /printf/test-positional-params 828s ok 18 /printf/test-64bit 828s # Start of test-64bit tests 828s # Start of subprocess tests 828s # End of subprocess tests 828s # End of test-64bit tests 828s # End of printf tests 828s # Start of sprintf tests 828s ok 19 /sprintf/test-positional-params 828s ok 20 /sprintf/upper-bound 828s # End of sprintf tests 828s # Start of vasprintf tests 828s # /vasprintf/invalid-format-placeholder summary: Test error handling for invalid format placeholder in g_vasprintf() 828s ok 21 /vasprintf/invalid-format-placeholder 828s # /vasprintf/invalid-wide-string summary: Test error handling for invalid wide strings in g_vasprintf() 828s ok 22 /vasprintf/invalid-wide-string 828s # End of vasprintf tests 828s TAP version 14 828s # random seed: R02S2b1a6fbed3a1af274df2f4255e220ad0 828s 1..18 828s # Start of cancellable tests 828s ok 1 /cancellable/multiple-concurrent # SKIP Not running timing heavy test 828s ok 2 /cancellable/null 828s ok 3 /cancellable/connect-data-is-destroyed-on-disconnect-and-dispose 828s # /cancellable/connect-to-disposing-callback summary: A cancellable signal callback can unref the cancellable 828s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3643 828s ok 4 /cancellable/connect-to-disposing-callback 828s ok 5 /cancellable/connect-cancelled-data-is-destroyed 828s # Toggle reference callback for GCancellable (0xc23e241ddcd0), last: 1 828s # Toggle reference callback for GCancellable (0xc23e241ddcd0), last: 0 828s # Toggle reference callback for GCancellable (0xc23e241ddcd0), last: 1 828s ok 6 /cancellable/connect-to-disposing-callback-with-toggle-reference 828s # /cancellable/connect-cancelled-to-disposing-callback summary: A cancellable signal callback can unref the cancellable 828s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3643 828s ok 7 /cancellable/connect-cancelled-to-disposing-callback 828s ok 8 /cancellable/connect-cancelled-with-destroy-func-disposing-cancellable 828s # Toggle reference callback for GCancellable (0xc23e241ddcd0), last: 1 828s # Toggle reference callback for GCancellable (0xc23e241ddcd0), last: 0 828s # Toggle reference callback for GCancellable (0xc23e241ddcd0), last: 1 828s # Toggle reference callback for GCancellable (0xc23e241ddcd0), last: 0 828s # Toggle reference callback for GCancellable (0xc23e241ddcd0), last: 1 828s ok 9 /cancellable/connect-cancelled-to-disposing-callback-with-toggle-reference 828s # /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 828s ok 10 /cancellable/disconnect-on-cancelled-callback-hangs 828s # /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 828s ok 11 /cancellable/resets-on-cancel-callback-hangs 828s ok 12 /cancellable/poll-fd 828s # /cancellable/poll-fd-cancelled summary: Tests that cancellation wakes up a pollable FD on creation 828s ok 13 /cancellable/poll-fd-cancelled 828s # /cancellable/poll-fd-cancelled-threaded summary: Tests that a cancellation wakes up a pollable FD 829s ok 14 /cancellable/poll-fd-cancelled-threaded 829s # /cancellable/cancel-reset-races summary: Tests threads racing for cancelling and resetting a GCancellable 829s ok 15 /cancellable/cancel-reset-races 829s # /cancellable/cancel-reset-connect-races summary: Tests threads racing for cancelling, connecting and disconnecting and resetting a GCancellable 829s not ok 16 /cancellable/cancel-reset-connect-races # TODO We didn't really checked if callbacks is called properly 829s # End of cancellable tests 829s # Start of cancellable-source tests 829s # /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) 829s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1841 829s ok 17 /cancellable-source/threaded-dispose 829s # slow test /cancellable-source/threaded-dispose executed in 0.65 secs 829s # /cancellable-source/can-be-fired-multiple-times summary: Test a cancellable source callback can be called multiple times 829s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/774 829s ok 18 /cancellable-source/can-be-fired-multiple-times 829s # End of cancellable-source tests 829s ok - glib/cancellable.test 829s # Running test: glib/sort.test 829s TAP version 14 829s # random seed: R02Scf024352d2b2235ebfa620067d154098 829s 1..5 829s # Start of sort tests 829s ok 1 /sort/basic 829s ok 2 /sort/zero-elements 829s ok 3 /sort/stable 829s ok 4 /sort/big 829s ok 5 /sort/deprecated 829s # End of sort tests 829s ok - glib/sort.test 829s # Running test: glib/utils-c-17.test 829s TAP version 14 829s # random seed: R02S33f5a24a1d529d7645ad3e0a0d812e8c 829s 1..41 829s # Start of utils tests 829s ok 1 /utils/language-names 829s ok 2 /utils/locale-variants 829s ok 3 /utils/version 829s ok 4 /utils/appname 829s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/847 829s # /utils/prgname-thread-safety summary: Test that threads racing to get and set the program name always receive a valid program name. 829s ok 5 /utils/prgname-thread-safety 829s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=627969 829s # /utils/tmpdir summary: Test that g_get_tmp_dir() returns a correct default if TMPDIR is set to the empty string 829s ok 6 /utils/tmpdir 829s ok 7 /utils/basic_bits 829s ok 8 /utils/bits 829s ok 9 /utils/swap 829s ok 10 /utils/find-program 829s ok 11 /utils/find-program-for-path 829s ok 12 /utils/debug 829s ok 13 /utils/codeset 829s ok 14 /utils/codeset2 829s ok 15 /utils/console-charset 829s ok 16 /utils/gettext 829s ok 17 /utils/username 829s ok 18 /utils/realname 829s ok 19 /utils/hostname 829s ok 20 /utils/xdgdirs 829s ok 21 /utils/specialdir 829s # NAME: Ubuntu 829s ok 22 /utils/os-info 829s ok 23 /utils/clear-pointer 829s ok 24 /utils/clear-pointer-cast 829s ok 25 /utils/take-pointer 829s ok 26 /utils/clear-source 829s ok 27 /utils/misc-mem 829s # /utils/aligned-mem summary: Aligned memory allocator 829s # Alignment must not be zero 829s # Alignment must be a power of two 829s # Alignment must be a multiple of sizeof(void*) 829s ok 28 /utils/aligned-mem 829s # /utils/free-sized summary: Check that g_free_sized() works 829s ok 29 /utils/free-sized 829s ok 30 /utils/nullify 829s ok 31 /utils/atexit 829s ok 32 /utils/check-setuid 829s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1663 829s ok 33 /utils/int-limits 829s ok 34 /utils/clear-list 829s ok 35 /utils/clear-slist 829s ok 36 /utils/steal-handle-id 829s # Start of specialdir tests 829s ok 37 /utils/specialdir/desktop 829s # End of specialdir tests 829s # Start of clear-pointer tests 829s ok 38 /utils/clear-pointer/side-effects 829s # End of clear-pointer tests 829s # Start of aligned-mem tests 829s # /utils/aligned-mem/alignment summary: Check that g_aligned_alloc() returns a correctly aligned pointer 829s ok 39 /utils/aligned-mem/alignment 829s # /utils/aligned-mem/zeroed summary: Check that g_aligned_alloc0() zeroes out its allocation 829s ok 40 /utils/aligned-mem/zeroed 829s # /utils/aligned-mem/free-sized summary: Check that g_aligned_free_sized() works 829s ok 41 /utils/aligned-mem/free-sized 829s # Start of subprocess tests 829s # End of subprocess tests 829s # End of aligned-mem tests 829s # End of utils tests 829s ok - glib/utils-c-17.test 829s # Running test: glib/socket-service.test 829s TAP version 14 829s # random seed: R02Se2162ccb9c1414c2fba80af71f7c8c41 829s 1..4 829s # Start of socket-service tests 829s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ?gio-proxy-resolver? 829s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xbe2544461120 and GSocketClientAsyncConnectData 0xbe254445bbc0 829s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 829s ok 1 /socket-service/start-stop 829s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xbe2544465100 and GSocketClientAsyncConnectData 0xbe2544464da0 829s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 829s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 829s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xbe2544465080 for GSocketClientAsyncConnectData 0xbe254445bbc0 829s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 829s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 829s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 829s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 829s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 829s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xbe2544465080 for GSocketClientAsyncConnectData 0xbe2544464da0 829s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 829s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 829s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 829s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 829s ok 2 /socket-service/read_write_async 829s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xbe2544465100 and GSocketClientAsyncConnectData 0xbe25444690d0 829s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 829s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 829s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xbe2544466ce0 for GSocketClientAsyncConnectData 0xbe25444690d0 829s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 829s ok - glib/socket-service.test 829s # Running test: glib/list.test 829s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 829s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 829s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 829s ok 3 /socket-service/read_writev_async 829s # Start of threaded tests 829s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=712570 829s # GLib-GIO-DEBUG: g_socket_client_connect_async: starting new g_socket_client_connect_async() with GTask 0xbe2544466750 and GSocketClientAsyncConnectData 0xbe2544464da0 829s # GLib-GIO-DEBUG: GSocketClient: Starting new address enumeration 829s # GLib-GIO-DEBUG: GSocketClient: Address enumeration succeeded 829s # GLib-GIO-DEBUG: g_socket_client_enumerator_callback: starting connection attempt 0xbe25444649d0 for GSocketClientAsyncConnectData 0xbe2544464da0 829s # GLib-GIO-DEBUG: GSocketClient: Starting TCP connection attempt 829s # GLib-GIO-DEBUG: GSocketClient: TCP connection successful 829s # GLib-GIO-DEBUG: GSocketClient: Starting application layer connection 829s # GLib-GIO-DEBUG: GSocketClient: Connection successful! 829s ok 4 /socket-service/threaded/712570 829s # End of threaded tests 829s # End of socket-service tests 829s TAP version 14 829s # random seed: R02S2eca6b458e92454078d09d746c634c02 829s 1..20 829s # Start of list tests 829s ok 1 /list/sort 829s ok 2 /list/sort-with-data 829s ok 3 /list/insert-before-link 829s ok 4 /list/insert-sorted 829s ok 5 /list/insert-sorted-with-data 829s ok 6 /list/reverse 829s ok 7 /list/nth 829s ok 8 /list/concat 829s ok 9 /list/remove 829s ok 10 /list/remove-all 829s ok 11 /list/first-last 829s ok 12 /list/insert 829s ok 13 /list/free-full 829s ok 14 /list/copy 829s ok 15 /list/copy-deep 829s ok 16 /list/delete-link 829s ok 17 /list/prepend 829s ok 18 /list/position 829s ok 19 /list/double-free 829s # Start of sort tests 829s ok - glib/list.test 829s # Running test: glib/throws.test 829s ok 20 /list/sort/stable 829s # End of sort tests 829s # End of list tests 829s TAP version 14 829s # random seed: R02S8aba7e586833f443af84ed71af0086d7 829s 1..3 829s # Start of throws tests 829s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/home 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/cache 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/system-config1:/tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/system-config2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/config 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/system-data1:/tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/system-data2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/data 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/state 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_throws_5ULB62/throws/invoke-gerror/.dirs/runtime 829s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 829s # /throws/invoke-gerror summary: Test invoking a function that throws a GError 829s ok 1 /throws/invoke-gerror 829s ok - glib/throws.test 829s # Running test: glib/g-file-info-filesystem-readonly.test 829s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/home 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/cache 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/system-config1:/tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/system-config2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/config 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/system-data1:/tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/system-data2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/data 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/state 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_throws_5ULB62/throws/vfunc-can-throw-gerror/.dirs/runtime 829s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 829s # /throws/vfunc-can-throw-gerror summary: Test gi_callable_info_can_throw_gerror() on a vfunc 829s ok 2 /throws/vfunc-can-throw-gerror 829s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/home 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/cache 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/system-config1:/tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/system-config2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/config 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/system-data1:/tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/system-data2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/data 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/state 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_throws_5ULB62/throws/callback-can-throw-gerror/.dirs/runtime 829s # Using GI_TYPELIB_DIR = /usr/libexec/installed-tests/glib/../introspection 829s # /throws/callback-can-throw-gerror summary: Test gi_callable_info_can_throw_gerror() on a callback 829s ok 3 /throws/callback-can-throw-gerror 829s # End of throws tests 829s TAP version 14 829s # random seed: R02S83d694f66184bcda546b39f8de87c781 829s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=787731 829s 1..2 829s # Start of g-file-info-filesystem-readonly tests 829s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/home 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/cache 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/system-config1:/tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/system-config2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/config 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/system-data1:/tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/system-data2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/data 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/state 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro/.dirs/runtime 829s ok 1 /g-file-info-filesystem-readonly/test-fs-ro # SKIP 'bindfs' and 'fusermount' commands are needed to run this test 829s ok - glib/g-file-info-filesystem-readonly.test 829s # Running test: glib/checksum.test 829s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/home 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/cache 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/system-config1:/tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/system-config2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/config 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/system-data1:/tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/system-data2 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/data 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/state 829s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_g-file-info-filesystem-readonly_VFWB62/g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor/.dirs/runtime 829s ok 2 /g-file-info-filesystem-readonly/test-fs-ro-with-mount-monitor # SKIP 'bindfs' and 'fusermount' commands are needed to run this test 829s # End of g-file-info-filesystem-readonly tests 829s TAP version 14 829s # random seed: R02S7cb0977c3582b03e34405090a6b73a96 829s 1..1851 829s # Start of checksum tests 829s ok 1 /checksum/unsupported 829s # Start of MD5 tests 829s ok 2 /checksum/MD5/0 829s ok 3 /checksum/MD5/1 829s ok 4 /checksum/MD5/2 829s ok 5 /checksum/MD5/3 829s ok 6 /checksum/MD5/4 829s ok 7 /checksum/MD5/5 829s ok 8 /checksum/MD5/6 829s ok 9 /checksum/MD5/7 829s ok 10 /checksum/MD5/8 829s ok 11 /checksum/MD5/9 829s ok 12 /checksum/MD5/10 829s ok 13 /checksum/MD5/11 829s ok 14 /checksum/MD5/12 829s ok 15 /checksum/MD5/13 829s ok 16 /checksum/MD5/14 829s ok 17 /checksum/MD5/15 829s ok 18 /checksum/MD5/16 829s ok 19 /checksum/MD5/17 829s ok 20 /checksum/MD5/18 829s ok 21 /checksum/MD5/19 829s ok 22 /checksum/MD5/20 829s ok 23 /checksum/MD5/21 829s ok 24 /checksum/MD5/22 829s ok 25 /checksum/MD5/23 829s ok 26 /checksum/MD5/24 829s ok 27 /checksum/MD5/25 829s ok 28 /checksum/MD5/26 829s ok 29 /checksum/MD5/27 829s ok 30 /checksum/MD5/28 829s ok 31 /checksum/MD5/29 829s ok 32 /checksum/MD5/30 829s ok 33 /checksum/MD5/31 829s ok 34 /checksum/MD5/32 829s ok 35 /checksum/MD5/33 829s ok 36 /checksum/MD5/34 829s ok 37 /checksum/MD5/35 829s ok 38 /checksum/MD5/36 829s ok 39 /checksum/MD5/37 829s ok 40 /checksum/MD5/38 829s ok 41 /checksum/MD5/39 829s ok 42 /checksum/MD5/40 829s ok 43 /checksum/MD5/41 829s ok 44 /checksum/MD5/42 829s ok 45 /checksum/MD5/43 829s ok 46 /checksum/MD5/44 829s ok 47 /checksum/MD5/45 829s ok 48 /checksum/MD5/46 829s ok 49 /checksum/MD5/47 829s ok 50 /checksum/MD5/48 829s ok 51 /checksum/MD5/49 829s ok 52 /checksum/MD5/50 829s ok 53 /checksum/MD5/51 829s ok 54 /checksum/MD5/52 829s ok 55 /checksum/MD5/53 829s ok 56 /checksum/MD5/54 829s ok 57 /checksum/MD5/55 829s ok 58 /checksum/MD5/56 829s ok 59 /checksum/MD5/57 829s ok 60 /checksum/MD5/58 829s ok 61 /checksum/MD5/59 829s ok 62 /checksum/MD5/60 829s ok 63 /checksum/MD5/61 829s ok 64 /checksum/MD5/62 829s ok 65 /checksum/MD5/63 829s ok 66 /checksum/MD5/64 829s ok 67 /checksum/MD5/65 829s ok 68 /checksum/MD5/66 829s ok 69 /checksum/MD5/67 829s ok 70 /checksum/MD5/68 829s ok 71 /checksum/MD5/69 829s ok 72 /checksum/MD5/70 829s ok 73 /checksum/MD5/71 829s ok 74 /checksum/MD5/72 829s ok 75 /checksum/MD5/73 829s ok 76 /checksum/MD5/74 829s ok 77 /checksum/MD5/75 829s ok 78 /checksum/MD5/76 829s ok 79 /checksum/MD5/77 829s ok 80 /checksum/MD5/78 829s ok 81 /checksum/MD5/79 829s ok 82 /checksum/MD5/80 829s ok 83 /checksum/MD5/81 829s ok 84 /checksum/MD5/82 829s ok 85 /checksum/MD5/83 829s ok 86 /checksum/MD5/84 829s ok 87 /checksum/MD5/85 829s ok 88 /checksum/MD5/86 829s ok 89 /checksum/MD5/87 829s ok 90 /checksum/MD5/88 829s ok 91 /checksum/MD5/89 829s ok 92 /checksum/MD5/90 829s ok 93 /checksum/MD5/91 829s ok 94 /checksum/MD5/92 829s ok 95 /checksum/MD5/93 829s ok 96 /checksum/MD5/94 829s ok 97 /checksum/MD5/95 829s ok 98 /checksum/MD5/96 829s ok 99 /checksum/MD5/97 829s ok 100 /checksum/MD5/98 829s ok 101 /checksum/MD5/99 829s ok 102 /checksum/MD5/100 829s ok 103 /checksum/MD5/101 829s ok 104 /checksum/MD5/102 829s ok 105 /checksum/MD5/103 829s ok 106 /checksum/MD5/104 829s ok 107 /checksum/MD5/105 829s ok 108 /checksum/MD5/106 829s ok 109 /checksum/MD5/107 829s ok 110 /checksum/MD5/108 829s ok 111 /checksum/MD5/109 829s ok 112 /checksum/MD5/110 829s ok 113 /checksum/MD5/111 829s ok 114 /checksum/MD5/112 829s ok 115 /checksum/MD5/113 829s ok 116 /checksum/MD5/114 829s ok 117 /checksum/MD5/115 829s ok 118 /checksum/MD5/116 829s ok 119 /checksum/MD5/117 829s ok 120 /checksum/MD5/118 829s ok 121 /checksum/MD5/119 829s ok 122 /checksum/MD5/120 829s ok 123 /checksum/MD5/121 829s ok 124 /checksum/MD5/122 829s ok 125 /checksum/MD5/123 829s ok 126 /checksum/MD5/124 829s ok 127 /checksum/MD5/125 829s ok 128 /checksum/MD5/126 829s ok 129 /checksum/MD5/127 829s ok 130 /checksum/MD5/128 829s ok 131 /checksum/MD5/129 829s ok 132 /checksum/MD5/130 829s ok 133 /checksum/MD5/131 829s ok 134 /checksum/MD5/132 829s ok 135 /checksum/MD5/133 829s ok 136 /checksum/MD5/134 829s ok 137 /checksum/MD5/135 829s ok 138 /checksum/MD5/136 829s ok 139 /checksum/MD5/137 829s ok 140 /checksum/MD5/138 829s ok 141 /checksum/MD5/139 829s ok 142 /checksum/MD5/140 829s ok 143 /checksum/MD5/141 829s ok 144 /checksum/MD5/142 829s ok 145 /checksum/MD5/143 829s ok 146 /checksum/MD5/144 829s ok 147 /checksum/MD5/145 829s ok 148 /checksum/MD5/146 829s ok 149 /checksum/MD5/147 829s ok 150 /checksum/MD5/148 829s ok 151 /checksum/MD5/149 829s ok 152 /checksum/MD5/150 829s ok 153 /checksum/MD5/151 829s ok 154 /checksum/MD5/152 829s ok 155 /checksum/MD5/153 829s ok 156 /checksum/MD5/154 829s ok 157 /checksum/MD5/155 829s ok 158 /checksum/MD5/156 829s ok 159 /checksum/MD5/157 829s ok 160 /checksum/MD5/158 829s ok 161 /checksum/MD5/159 829s ok 162 /checksum/MD5/160 829s ok 163 /checksum/MD5/161 829s ok 164 /checksum/MD5/162 829s ok 165 /checksum/MD5/163 829s ok 166 /checksum/MD5/164 829s ok 167 /checksum/MD5/165 829s ok 168 /checksum/MD5/166 829s ok 169 /checksum/MD5/167 829s ok 170 /checksum/MD5/168 829s ok 171 /checksum/MD5/169 829s ok 172 /checksum/MD5/170 829s ok 173 /checksum/MD5/171 829s ok 174 /checksum/MD5/172 829s ok 175 /checksum/MD5/173 829s ok 176 /checksum/MD5/174 829s ok 177 /checksum/MD5/175 829s ok 178 /checksum/MD5/176 829s ok 179 /checksum/MD5/177 829s ok 180 /checksum/MD5/178 829s ok 181 /checksum/MD5/179 829s ok 182 /checksum/MD5/180 829s ok 183 /checksum/MD5/181 829s ok 184 /checksum/MD5/182 829s ok 185 /checksum/MD5/183 829s ok 186 /checksum/MD5/string 829s ok 187 /checksum/MD5/bytes 829s # Start of reset tests 829s ok 188 /checksum/MD5/reset/0 829s ok 189 /checksum/MD5/reset/1 829s ok 190 /checksum/MD5/reset/2 829s ok 191 /checksum/MD5/reset/3 829s ok 192 /checksum/MD5/reset/4 829s ok 193 /checksum/MD5/reset/5 829s ok 194 /checksum/MD5/reset/6 829s ok 195 /checksum/MD5/reset/7 829s ok 196 /checksum/MD5/reset/8 829s ok 197 /checksum/MD5/reset/9 829s ok 198 /checksum/MD5/reset/10 829s ok 199 /checksum/MD5/reset/11 829s ok 200 /checksum/MD5/reset/12 829s ok 201 /checksum/MD5/reset/13 829s ok 202 /checksum/MD5/reset/14 829s ok 203 /checksum/MD5/reset/15 829s ok 204 /checksum/MD5/reset/16 829s ok 205 /checksum/MD5/reset/17 829s ok 206 /checksum/MD5/reset/18 829s ok 207 /checksum/MD5/reset/19 829s ok 208 /checksum/MD5/reset/20 829s ok 209 /checksum/MD5/reset/21 829s ok 210 /checksum/MD5/reset/22 829s ok 211 /checksum/MD5/reset/23 829s ok 212 /checksum/MD5/reset/24 829s ok 213 /checksum/MD5/reset/25 829s ok 214 /checksum/MD5/reset/26 829s ok 215 /checksum/MD5/reset/27 829s ok 216 /checksum/MD5/reset/28 829s ok 217 /checksum/MD5/reset/29 829s ok 218 /checksum/MD5/reset/30 829s ok 219 /checksum/MD5/reset/31 829s ok 220 /checksum/MD5/reset/32 829s ok 221 /checksum/MD5/reset/33 829s ok 222 /checksum/MD5/reset/34 829s ok 223 /checksum/MD5/reset/35 829s ok 224 /checksum/MD5/reset/36 829s ok 225 /checksum/MD5/reset/37 829s ok 226 /checksum/MD5/reset/38 829s ok 227 /checksum/MD5/reset/39 829s ok 228 /checksum/MD5/reset/40 829s ok 229 /checksum/MD5/reset/41 829s ok 230 /checksum/MD5/reset/42 829s ok 231 /checksum/MD5/reset/43 829s ok 232 /checksum/MD5/reset/44 829s ok 233 /checksum/MD5/reset/45 829s ok 234 /checksum/MD5/reset/46 829s ok 235 /checksum/MD5/reset/47 829s ok 236 /checksum/MD5/reset/48 829s ok 237 /checksum/MD5/reset/49 829s ok 238 /checksum/MD5/reset/50 829s ok 239 /checksum/MD5/reset/51 829s ok 240 /checksum/MD5/reset/52 829s ok 241 /checksum/MD5/reset/53 829s ok 242 /checksum/MD5/reset/54 829s ok 243 /checksum/MD5/reset/55 829s ok 244 /checksum/MD5/reset/56 829s ok 245 /checksum/MD5/reset/57 829s ok 246 /checksum/MD5/reset/58 829s ok 247 /checksum/MD5/reset/59 829s ok 248 /checksum/MD5/reset/60 829s ok 249 /checksum/MD5/reset/61 829s ok 250 /checksum/MD5/reset/62 829s ok 251 /checksum/MD5/reset/63 829s ok 252 /checksum/MD5/reset/64 829s ok 253 /checksum/MD5/reset/65 829s ok 254 /checksum/MD5/reset/66 829s ok 255 /checksum/MD5/reset/67 829s ok 256 /checksum/MD5/reset/68 829s ok 257 /checksum/MD5/reset/69 829s ok 258 /checksum/MD5/reset/70 829s ok 259 /checksum/MD5/reset/71 829s ok 260 /checksum/MD5/reset/72 829s ok 261 /checksum/MD5/reset/73 829s ok 262 /checksum/MD5/reset/74 829s ok 263 /checksum/MD5/reset/75 829s ok 264 /checksum/MD5/reset/76 829s ok 265 /checksum/MD5/reset/77 829s ok 266 /checksum/MD5/reset/78 829s ok 267 /checksum/MD5/reset/79 829s ok 268 /checksum/MD5/reset/80 829s ok 269 /checksum/MD5/reset/81 829s ok 270 /checksum/MD5/reset/82 829s ok 271 /checksum/MD5/reset/83 829s ok 272 /checksum/MD5/reset/84 829s ok 273 /checksum/MD5/reset/85 829s ok 274 /checksum/MD5/reset/86 829s ok 275 /checksum/MD5/reset/87 829s ok 276 /checksum/MD5/reset/88 829s ok 277 /checksum/MD5/reset/89 829s ok 278 /checksum/MD5/reset/90 829s ok 279 /checksum/MD5/reset/91 829s ok 280 /checksum/MD5/reset/92 829s ok 281 /checksum/MD5/reset/93 829s ok 282 /checksum/MD5/reset/94 829s ok 283 /checksum/MD5/reset/95 829s ok 284 /checksum/MD5/reset/96 829s ok 285 /checksum/MD5/reset/97 829s ok 286 /checksum/MD5/reset/98 829s ok 287 /checksum/MD5/reset/99 829s ok 288 /checksum/MD5/reset/100 829s ok 289 /checksum/MD5/reset/101 829s ok 290 /checksum/MD5/reset/102 829s ok 291 /checksum/MD5/reset/103 829s ok 292 /checksum/MD5/reset/104 829s ok 293 /checksum/MD5/reset/105 829s ok 294 /checksum/MD5/reset/106 829s ok 295 /checksum/MD5/reset/107 829s ok 296 /checksum/MD5/reset/108 829s ok 297 /checksum/MD5/reset/109 829s ok 298 /checksum/MD5/reset/110 829s ok 299 /checksum/MD5/reset/111 829s ok 300 /checksum/MD5/reset/112 829s ok 301 /checksum/MD5/reset/113 829s ok 302 /checksum/MD5/reset/114 829s ok 303 /checksum/MD5/reset/115 829s ok 304 /checksum/MD5/reset/116 829s ok 305 /checksum/MD5/reset/117 829s ok 306 /checksum/MD5/reset/118 829s ok 307 /checksum/MD5/reset/119 829s ok 308 /checksum/MD5/reset/120 829s ok 309 /checksum/MD5/reset/121 829s ok 310 /checksum/MD5/reset/122 829s ok 311 /checksum/MD5/reset/123 829s ok 312 /checksum/MD5/reset/124 829s ok 313 /checksum/MD5/reset/125 829s ok 314 /checksum/MD5/reset/126 829s ok 315 /checksum/MD5/reset/127 829s ok 316 /checksum/MD5/reset/128 829s ok 317 /checksum/MD5/reset/129 829s ok 318 /checksum/MD5/reset/130 829s ok 319 /checksum/MD5/reset/131 829s ok 320 /checksum/MD5/reset/132 829s ok 321 /checksum/MD5/reset/133 829s ok 322 /checksum/MD5/reset/134 829s ok 323 /checksum/MD5/reset/135 829s ok 324 /checksum/MD5/reset/136 829s ok 325 /checksum/MD5/reset/137 829s ok 326 /checksum/MD5/reset/138 829s ok 327 /checksum/MD5/reset/139 829s ok 328 /checksum/MD5/reset/140 829s ok 329 /checksum/MD5/reset/141 829s ok 330 /checksum/MD5/reset/142 829s ok 331 /checksum/MD5/reset/143 829s ok 332 /checksum/MD5/reset/144 829s ok 333 /checksum/MD5/reset/145 829s ok 334 /checksum/MD5/reset/146 829s ok 335 /checksum/MD5/reset/147 829s ok 336 /checksum/MD5/reset/148 829s ok 337 /checksum/MD5/reset/149 829s ok 338 /checksum/MD5/reset/150 829s ok 339 /checksum/MD5/reset/151 829s ok 340 /checksum/MD5/reset/152 829s ok 341 /checksum/MD5/reset/153 829s ok 342 /checksum/MD5/reset/154 829s ok 343 /checksum/MD5/reset/155 829s ok 344 /checksum/MD5/reset/156 829s ok 345 /checksum/MD5/reset/157 829s ok 346 /checksum/MD5/reset/158 829s ok 347 /checksum/MD5/reset/159 829s ok 348 /checksum/MD5/reset/160 829s ok 349 /checksum/MD5/reset/161 829s ok 350 /checksum/MD5/reset/162 829s ok 351 /checksum/MD5/reset/163 829s ok 352 /checksum/MD5/reset/164 829s ok 353 /checksum/MD5/reset/165 829s ok 354 /checksum/MD5/reset/166 829s ok 355 /checksum/MD5/reset/167 829s ok 356 /checksum/MD5/reset/168 829s ok 357 /checksum/MD5/reset/169 829s ok 358 /checksum/MD5/reset/170 829s ok 359 /checksum/MD5/reset/171 829s ok 360 /checksum/MD5/reset/172 829s ok 361 /checksum/MD5/reset/173 829s ok 362 /checksum/MD5/reset/174 829s ok 363 /checksum/MD5/reset/175 829s ok 364 /checksum/MD5/reset/176 829s ok 365 /checksum/MD5/reset/177 829s ok 366 /checksum/MD5/reset/178 829s ok 367 /checksum/MD5/reset/179 829s ok 368 /checksum/MD5/reset/180 829s ok 369 /checksum/MD5/reset/181 829s ok 370 /checksum/MD5/reset/182 829s ok 371 /checksum/MD5/reset/183 829s # End of reset tests 829s # End of MD5 tests 829s # Start of SHA1 tests 829s ok 372 /checksum/SHA1/0 829s ok 373 /checksum/SHA1/1 829s ok 374 /checksum/SHA1/2 829s ok 375 /checksum/SHA1/3 829s ok 376 /checksum/SHA1/4 829s ok 377 /checksum/SHA1/5 829s ok 378 /checksum/SHA1/6 829s ok 379 /checksum/SHA1/7 829s ok 380 /checksum/SHA1/8 829s ok 381 /checksum/SHA1/9 829s ok 382 /checksum/SHA1/10 829s ok 383 /checksum/SHA1/11 829s ok 384 /checksum/SHA1/12 829s ok 385 /checksum/SHA1/13 829s ok 386 /checksum/SHA1/14 829s ok 387 /checksum/SHA1/15 829s ok 388 /checksum/SHA1/16 829s ok 389 /checksum/SHA1/17 829s ok 390 /checksum/SHA1/18 829s ok 391 /checksum/SHA1/19 829s ok 392 /checksum/SHA1/20 829s ok 393 /checksum/SHA1/21 829s ok 394 /checksum/SHA1/22 829s ok 395 /checksum/SHA1/23 829s ok 396 /checksum/SHA1/24 829s ok 397 /checksum/SHA1/25 829s ok 398 /checksum/SHA1/26 829s ok 399 /checksum/SHA1/27 829s ok 400 /checksum/SHA1/28 829s ok 401 /checksum/SHA1/29 829s ok 402 /checksum/SHA1/30 829s ok 403 /checksum/SHA1/31 829s ok 404 /checksum/SHA1/32 829s ok 405 /checksum/SHA1/33 829s ok 406 /checksum/SHA1/34 829s ok 407 /checksum/SHA1/35 829s ok 408 /checksum/SHA1/36 829s ok 409 /checksum/SHA1/37 829s ok 410 /checksum/SHA1/38 829s ok 411 /checksum/SHA1/39 829s ok 412 /checksum/SHA1/40 829s ok 413 /checksum/SHA1/41 829s ok 414 /checksum/SHA1/42 829s ok 415 /checksum/SHA1/43 829s ok 416 /checksum/SHA1/44 829s ok 417 /checksum/SHA1/45 829s ok 418 /checksum/SHA1/46 829s ok 419 /checksum/SHA1/47 829s ok 420 /checksum/SHA1/48 829s ok 421 /checksum/SHA1/49 829s ok 422 /checksum/SHA1/50 829s ok 423 /checksum/SHA1/51 829s ok 424 /checksum/SHA1/52 829s ok 425 /checksum/SHA1/53 829s ok 426 /checksum/SHA1/54 829s ok 427 /checksum/SHA1/55 829s ok 428 /checksum/SHA1/56 829s ok 429 /checksum/SHA1/57 829s ok 430 /checksum/SHA1/58 829s ok 431 /checksum/SHA1/59 829s ok 432 /checksum/SHA1/60 829s ok 433 /checksum/SHA1/61 829s ok 434 /checksum/SHA1/62 829s ok 435 /checksum/SHA1/63 829s ok 436 /checksum/SHA1/64 829s ok 437 /checksum/SHA1/65 829s ok 438 /checksum/SHA1/66 829s ok 439 /checksum/SHA1/67 829s ok 440 /checksum/SHA1/68 829s ok 441 /checksum/SHA1/69 829s ok 442 /checksum/SHA1/70 829s ok 443 /checksum/SHA1/71 829s ok 444 /checksum/SHA1/72 829s ok 445 /checksum/SHA1/73 829s ok 446 /checksum/SHA1/74 829s ok 447 /checksum/SHA1/75 829s ok 448 /checksum/SHA1/76 829s ok 449 /checksum/SHA1/77 829s ok 450 /checksum/SHA1/78 829s ok 451 /checksum/SHA1/79 829s ok 452 /checksum/SHA1/80 829s ok 453 /checksum/SHA1/81 829s ok 454 /checksum/SHA1/82 829s ok 455 /checksum/SHA1/83 829s ok 456 /checksum/SHA1/84 829s ok 457 /checksum/SHA1/85 829s ok 458 /checksum/SHA1/86 829s ok 459 /checksum/SHA1/87 829s ok 460 /checksum/SHA1/88 829s ok 461 /checksum/SHA1/89 829s ok 462 /checksum/SHA1/90 829s ok 463 /checksum/SHA1/91 829s ok 464 /checksum/SHA1/92 829s ok 465 /checksum/SHA1/93 829s ok 466 /checksum/SHA1/94 829s ok 467 /checksum/SHA1/95 829s ok 468 /checksum/SHA1/96 829s ok 469 /checksum/SHA1/97 829s ok 470 /checksum/SHA1/98 829s ok 471 /checksum/SHA1/99 829s ok 472 /checksum/SHA1/100 829s ok 473 /checksum/SHA1/101 829s ok 474 /checksum/SHA1/102 829s ok 475 /checksum/SHA1/103 829s ok 476 /checksum/SHA1/104 829s ok 477 /checksum/SHA1/105 829s ok 478 /checksum/SHA1/106 829s ok 479 /checksum/SHA1/107 829s ok 480 /checksum/SHA1/108 829s ok 481 /checksum/SHA1/109 829s ok 482 /checksum/SHA1/110 829s ok 483 /checksum/SHA1/111 829s ok 484 /checksum/SHA1/112 829s ok 485 /checksum/SHA1/113 829s ok 486 /checksum/SHA1/114 829s ok 487 /checksum/SHA1/115 829s ok 488 /checksum/SHA1/116 829s ok 489 /checksum/SHA1/117 829s ok 490 /checksum/SHA1/118 829s ok 491 /checksum/SHA1/119 829s ok 492 /checksum/SHA1/120 829s ok 493 /checksum/SHA1/121 829s ok 494 /checksum/SHA1/122 829s ok 495 /checksum/SHA1/123 829s ok 496 /checksum/SHA1/124 829s ok 497 /checksum/SHA1/125 829s ok 498 /checksum/SHA1/126 829s ok 499 /checksum/SHA1/127 829s ok 500 /checksum/SHA1/128 829s ok 501 /checksum/SHA1/129 829s ok 502 /checksum/SHA1/130 829s ok 503 /checksum/SHA1/131 829s ok 504 /checksum/SHA1/132 829s ok 505 /checksum/SHA1/133 829s ok 506 /checksum/SHA1/134 829s ok 507 /checksum/SHA1/135 829s ok 508 /checksum/SHA1/136 829s ok 509 /checksum/SHA1/137 829s ok 510 /checksum/SHA1/138 829s ok 511 /checksum/SHA1/139 829s ok 512 /checksum/SHA1/140 829s ok 513 /checksum/SHA1/141 829s ok 514 /checksum/SHA1/142 829s ok 515 /checksum/SHA1/143 829s ok 516 /checksum/SHA1/144 829s ok 517 /checksum/SHA1/145 829s ok 518 /checksum/SHA1/146 829s ok 519 /checksum/SHA1/147 829s ok 520 /checksum/SHA1/148 829s ok 521 /checksum/SHA1/149 829s ok 522 /checksum/SHA1/150 829s ok 523 /checksum/SHA1/151 829s ok 524 /checksum/SHA1/152 829s ok 525 /checksum/SHA1/153 829s ok 526 /checksum/SHA1/154 829s ok 527 /checksum/SHA1/155 829s ok 528 /checksum/SHA1/156 829s ok 529 /checksum/SHA1/157 829s ok 530 /checksum/SHA1/158 829s ok 531 /checksum/SHA1/159 829s ok 532 /checksum/SHA1/160 829s ok 533 /checksum/SHA1/161 829s ok 534 /checksum/SHA1/162 829s ok 535 /checksum/SHA1/163 829s ok 536 /checksum/SHA1/164 829s ok 537 /checksum/SHA1/165 829s ok 538 /checksum/SHA1/166 829s ok 539 /checksum/SHA1/167 829s ok 540 /checksum/SHA1/168 829s ok 541 /checksum/SHA1/169 829s ok 542 /checksum/SHA1/170 829s ok 543 /checksum/SHA1/171 829s ok 544 /checksum/SHA1/172 829s ok 545 /checksum/SHA1/173 829s ok 546 /checksum/SHA1/174 829s ok 547 /checksum/SHA1/175 829s ok 548 /checksum/SHA1/176 829s ok 549 /checksum/SHA1/177 829s ok 550 /checksum/SHA1/178 829s ok 551 /checksum/SHA1/179 829s ok 552 /checksum/SHA1/180 829s ok 553 /checksum/SHA1/181 829s ok 554 /checksum/SHA1/182 829s ok 555 /checksum/SHA1/183 829s ok 556 /checksum/SHA1/string 829s ok 557 /checksum/SHA1/bytes 829s # Start of reset tests 829s ok 558 /checksum/SHA1/reset/0 829s ok 559 /checksum/SHA1/reset/1 829s ok 560 /checksum/SHA1/reset/2 829s ok 561 /checksum/SHA1/reset/3 829s ok 562 /checksum/SHA1/reset/4 829s ok 563 /checksum/SHA1/reset/5 829s ok 564 /checksum/SHA1/reset/6 829s ok 565 /checksum/SHA1/reset/7 829s ok 566 /checksum/SHA1/reset/8 829s ok 567 /checksum/SHA1/reset/9 829s ok 568 /checksum/SHA1/reset/10 829s ok 569 /checksum/SHA1/reset/11 829s ok 570 /checksum/SHA1/reset/12 829s ok 571 /checksum/SHA1/reset/13 829s ok 572 /checksum/SHA1/reset/14 829s ok 573 /checksum/SHA1/reset/15 829s ok 574 /checksum/SHA1/reset/16 829s ok 575 /checksum/SHA1/reset/17 829s ok 576 /checksum/SHA1/reset/18 829s ok 577 /checksum/SHA1/reset/19 829s ok 578 /checksum/SHA1/reset/20 829s ok 579 /checksum/SHA1/reset/21 829s ok 580 /checksum/SHA1/reset/22 829s ok 581 /checksum/SHA1/reset/23 829s ok 582 /checksum/SHA1/reset/24 829s ok 583 /checksum/SHA1/reset/25 829s ok 584 /checksum/SHA1/reset/26 829s ok 585 /checksum/SHA1/reset/27 829s ok 586 /checksum/SHA1/reset/28 829s ok 587 /checksum/SHA1/reset/29 829s ok 588 /checksum/SHA1/reset/30 829s ok 589 /checksum/SHA1/reset/31 829s ok 590 /checksum/SHA1/reset/32 829s ok 591 /checksum/SHA1/reset/33 829s ok 592 /checksum/SHA1/reset/34 829s ok 593 /checksum/SHA1/reset/35 829s ok 594 /checksum/SHA1/reset/36 829s ok 595 /checksum/SHA1/reset/37 829s ok 596 /checksum/SHA1/reset/38 829s ok 597 /checksum/SHA1/reset/39 829s ok 598 /checksum/SHA1/reset/40 829s ok 599 /checksum/SHA1/reset/41 829s ok 600 /checksum/SHA1/reset/42 829s ok 601 /checksum/SHA1/reset/43 829s ok 602 /checksum/SHA1/reset/44 829s ok 603 /checksum/SHA1/reset/45 829s ok 604 /checksum/SHA1/reset/46 829s ok 605 /checksum/SHA1/reset/47 829s ok 606 /checksum/SHA1/reset/48 829s ok 607 /checksum/SHA1/reset/49 829s ok 608 /checksum/SHA1/reset/50 829s ok 609 /checksum/SHA1/reset/51 829s ok 610 /checksum/SHA1/reset/52 829s ok 611 /checksum/SHA1/reset/53 829s ok 612 /checksum/SHA1/reset/54 829s ok 613 /checksum/SHA1/reset/55 829s ok 614 /checksum/SHA1/reset/56 829s ok 615 /checksum/SHA1/reset/57 829s ok 616 /checksum/SHA1/reset/58 829s ok 617 /checksum/SHA1/reset/59 829s ok 618 /checksum/SHA1/reset/60 829s ok 619 /checksum/SHA1/reset/61 829s ok 620 /checksum/SHA1/reset/62 829s ok 621 /checksum/SHA1/reset/63 829s ok 622 /checksum/SHA1/reset/64 829s ok 623 /checksum/SHA1/reset/65 829s ok 624 /checksum/SHA1/reset/66 829s ok 625 /checksum/SHA1/reset/67 829s ok 626 /checksum/SHA1/reset/68 829s ok 627 /checksum/SHA1/reset/69 829s ok 628 /checksum/SHA1/reset/70 829s ok 629 /checksum/SHA1/reset/71 829s ok 630 /checksum/SHA1/reset/72 829s ok 631 /checksum/SHA1/reset/73 829s ok 632 /checksum/SHA1/reset/74 829s ok 633 /checksum/SHA1/reset/75 829s ok 634 /checksum/SHA1/reset/76 829s ok 635 /checksum/SHA1/reset/77 829s ok 636 /checksum/SHA1/reset/78 829s ok 637 /checksum/SHA1/reset/79 829s ok 638 /checksum/SHA1/reset/80 829s ok 639 /checksum/SHA1/reset/81 829s ok 640 /checksum/SHA1/reset/82 829s ok 641 /checksum/SHA1/reset/83 829s ok 642 /checksum/SHA1/reset/84 829s ok 643 /checksum/SHA1/reset/85 829s ok 644 /checksum/SHA1/reset/86 829s ok 645 /checksum/SHA1/reset/87 829s ok 646 /checksum/SHA1/reset/88 829s ok 647 /checksum/SHA1/reset/89 829s ok 648 /checksum/SHA1/reset/90 829s ok 649 /checksum/SHA1/reset/91 829s ok 650 /checksum/SHA1/reset/92 829s ok 651 /checksum/SHA1/reset/93 829s ok 652 /checksum/SHA1/reset/94 829s ok 653 /checksum/SHA1/reset/95 829s ok 654 /checksum/SHA1/reset/96 829s ok 655 /checksum/SHA1/reset/97 829s ok 656 /checksum/SHA1/reset/98 829s ok 657 /checksum/SHA1/reset/99 829s ok 658 /checksum/SHA1/reset/100 829s ok 659 /checksum/SHA1/reset/101 829s ok 660 /checksum/SHA1/reset/102 829s ok 661 /checksum/SHA1/reset/103 829s ok 662 /checksum/SHA1/reset/104 829s ok 663 /checksum/SHA1/reset/105 829s ok 664 /checksum/SHA1/reset/106 829s ok 665 /checksum/SHA1/reset/107 829s ok 666 /checksum/SHA1/reset/108 829s ok 667 /checksum/SHA1/reset/109 829s ok 668 /checksum/SHA1/reset/110 829s ok 669 /checksum/SHA1/reset/111 829s ok 670 /checksum/SHA1/reset/112 829s ok 671 /checksum/SHA1/reset/113 829s ok 672 /checksum/SHA1/reset/114 829s ok 673 /checksum/SHA1/reset/115 829s ok 674 /checksum/SHA1/reset/116 829s ok 675 /checksum/SHA1/reset/117 829s ok 676 /checksum/SHA1/reset/118 829s ok 677 /checksum/SHA1/reset/119 829s ok 678 /checksum/SHA1/reset/120 829s ok 679 /checksum/SHA1/reset/121 829s ok 680 /checksum/SHA1/reset/122 829s ok 681 /checksum/SHA1/reset/123 829s ok 682 /checksum/SHA1/reset/124 829s ok 683 /checksum/SHA1/reset/125 829s ok 684 /checksum/SHA1/reset/126 829s ok 685 /checksum/SHA1/reset/127 829s ok 686 /checksum/SHA1/reset/128 829s ok 687 /checksum/SHA1/reset/129 829s ok 688 /checksum/SHA1/reset/130 829s ok 689 /checksum/SHA1/reset/131 829s ok 690 /checksum/SHA1/reset/132 829s ok 691 /checksum/SHA1/reset/133 829s ok 692 /checksum/SHA1/reset/134 829s ok 693 /checksum/SHA1/reset/135 829s ok 694 /checksum/SHA1/reset/136 829s ok 695 /checksum/SHA1/reset/137 829s ok 696 /checksum/SHA1/reset/138 829s ok 697 /checksum/SHA1/reset/139 829s ok 698 /checksum/SHA1/reset/140 829s ok 699 /checksum/SHA1/reset/141 829s ok 700 /checksum/SHA1/reset/142 829s ok 701 /checksum/SHA1/reset/143 829s ok 702 /checksum/SHA1/reset/144 829s ok 703 /checksum/SHA1/reset/145 829s ok 704 /checksum/SHA1/reset/146 829s ok 705 /checksum/SHA1/reset/147 829s ok 706 /checksum/SHA1/reset/148 829s ok 707 /checksum/SHA1/reset/149 829s ok 708 /checksum/SHA1/reset/150 829s ok 709 /checksum/SHA1/reset/151 829s ok 710 /checksum/SHA1/reset/152 829s ok 711 /checksum/SHA1/reset/153 829s ok 712 /checksum/SHA1/reset/154 829s ok 713 /checksum/SHA1/reset/155 829s ok 714 /checksum/SHA1/reset/156 829s ok 715 /checksum/SHA1/reset/157 829s ok 716 /checksum/SHA1/reset/158 829s ok 717 /checksum/SHA1/reset/159 829s ok 718 /checksum/SHA1/reset/160 829s ok 719 /checksum/SHA1/reset/161 829s ok 720 /checksum/SHA1/reset/162 829s ok 721 /checksum/SHA1/reset/163 829s ok 722 /checksum/SHA1/reset/164 829s ok 723 /checksum/SHA1/reset/165 829s ok 724 /checksum/SHA1/reset/166 829s ok 725 /checksum/SHA1/reset/167 829s ok 726 /checksum/SHA1/reset/168 829s ok 727 /checksum/SHA1/reset/169 829s ok 728 /checksum/SHA1/reset/170 829s ok 729 /checksum/SHA1/reset/171 829s ok 730 /checksum/SHA1/reset/172 829s ok 731 /checksum/SHA1/reset/173 829s ok 732 /checksum/SHA1/reset/174 829s ok 733 /checksum/SHA1/reset/175 829s ok 734 /checksum/SHA1/reset/176 829s ok 735 /checksum/SHA1/reset/177 829s ok 736 /checksum/SHA1/reset/178 829s ok 737 /checksum/SHA1/reset/179 829s ok 738 /checksum/SHA1/reset/180 829s ok 739 /checksum/SHA1/reset/181 829s ok 740 /checksum/SHA1/reset/182 829s ok 741 /checksum/SHA1/reset/183 829s # End of reset tests 829s # End of SHA1 tests 829s # Start of SHA256 tests 829s ok 742 /checksum/SHA256/0 829s ok 743 /checksum/SHA256/1 829s ok 744 /checksum/SHA256/2 829s ok 745 /checksum/SHA256/3 829s ok 746 /checksum/SHA256/4 829s ok 747 /checksum/SHA256/5 829s ok 748 /checksum/SHA256/6 829s ok 749 /checksum/SHA256/7 829s ok 750 /checksum/SHA256/8 829s ok 751 /checksum/SHA256/9 829s ok 752 /checksum/SHA256/10 829s ok 753 /checksum/SHA256/11 829s ok 754 /checksum/SHA256/12 829s ok 755 /checksum/SHA256/13 829s ok 756 /checksum/SHA256/14 829s ok 757 /checksum/SHA256/15 829s ok 758 /checksum/SHA256/16 829s ok 759 /checksum/SHA256/17 829s ok 760 /checksum/SHA256/18 829s ok 761 /checksum/SHA256/19 829s ok 762 /checksum/SHA256/20 829s ok 763 /checksum/SHA256/21 829s ok 764 /checksum/SHA256/22 829s ok 765 /checksum/SHA256/23 829s ok 766 /checksum/SHA256/24 829s ok 767 /checksum/SHA256/25 829s ok 768 /checksum/SHA256/26 829s ok 769 /checksum/SHA256/27 829s ok 770 /checksum/SHA256/28 829s ok 771 /checksum/SHA256/29 829s ok 772 /checksum/SHA256/30 829s ok 773 /checksum/SHA256/31 829s ok 774 /checksum/SHA256/32 829s ok 775 /checksum/SHA256/33 829s ok 776 /checksum/SHA256/34 829s ok 777 /checksum/SHA256/35 829s ok 778 /checksum/SHA256/36 829s ok 779 /checksum/SHA256/37 829s ok 780 /checksum/SHA256/38 829s ok 781 /checksum/SHA256/39 829s ok 782 /checksum/SHA256/40 829s ok 783 /checksum/SHA256/41 829s ok 784 /checksum/SHA256/42 829s ok 785 /checksum/SHA256/43 829s ok 786 /checksum/SHA256/44 829s ok 787 /checksum/SHA256/45 829s ok 788 /checksum/SHA256/46 829s ok 789 /checksum/SHA256/47 829s ok 790 /checksum/SHA256/48 829s ok 791 /checksum/SHA256/49 829s ok 792 /checksum/SHA256/50 829s ok 793 /checksum/SHA256/51 829s ok 794 /checksum/SHA256/52 829s ok 795 /checksum/SHA256/53 829s ok 796 /checksum/SHA256/54 829s ok 797 /checksum/SHA256/55 829s ok 798 /checksum/SHA256/56 829s ok 799 /checksum/SHA256/57 829s ok 800 /checksum/SHA256/58 829s ok 801 /checksum/SHA256/59 829s ok 802 /checksum/SHA256/60 829s ok 803 /checksum/SHA256/61 829s ok 804 /checksum/SHA256/62 829s ok 805 /checksum/SHA256/63 829s ok 806 /checksum/SHA256/64 829s ok 807 /checksum/SHA256/65 829s ok 808 /checksum/SHA256/66 829s ok 809 /checksum/SHA256/67 829s ok 810 /checksum/SHA256/68 829s ok 811 /checksum/SHA256/69 829s ok 812 /checksum/SHA256/70 829s ok 813 /checksum/SHA256/71 829s ok 814 /checksum/SHA256/72 829s ok 815 /checksum/SHA256/73 829s ok 816 /checksum/SHA256/74 829s ok 817 /checksum/SHA256/75 829s ok 818 /checksum/SHA256/76 829s ok 819 /checksum/SHA256/77 829s ok 820 /checksum/SHA256/78 829s ok 821 /checksum/SHA256/79 829s ok 822 /checksum/SHA256/80 829s ok 823 /checksum/SHA256/81 829s ok 824 /checksum/SHA256/82 829s ok 825 /checksum/SHA256/83 829s ok 826 /checksum/SHA256/84 829s ok 827 /checksum/SHA256/85 829s ok 828 /checksum/SHA256/86 829s ok 829 /checksum/SHA256/87 829s ok 830 /checksum/SHA256/88 829s ok 831 /checksum/SHA256/89 829s ok 832 /checksum/SHA256/90 829s ok 833 /checksum/SHA256/91 829s ok 834 /checksum/SHA256/92 829s ok 835 /checksum/SHA256/93 829s ok 836 /checksum/SHA256/94 829s ok 837 /checksum/SHA256/95 829s ok 838 /checksum/SHA256/96 829s ok 839 /checksum/SHA256/97 829s ok 840 /checksum/SHA256/98 829s ok 841 /checksum/SHA256/99 829s ok 842 /checksum/SHA256/100 829s ok 843 /checksum/SHA256/101 829s ok 844 /checksum/SHA256/102 829s ok 845 /checksum/SHA256/103 829s ok 846 /checksum/SHA256/104 829s ok 847 /checksum/SHA256/105 829s ok 848 /checksum/SHA256/106 829s ok 849 /checksum/SHA256/107 829s ok 850 /checksum/SHA256/108 829s ok 851 /checksum/SHA256/109 829s ok 852 /checksum/SHA256/110 829s ok 853 /checksum/SHA256/111 829s ok 854 /checksum/SHA256/112 829s ok 855 /checksum/SHA256/113 829s ok 856 /checksum/SHA256/114 829s ok 857 /checksum/SHA256/115 829s ok 858 /checksum/SHA256/116 829s ok 859 /checksum/SHA256/117 829s ok 860 /checksum/SHA256/118 829s ok 861 /checksum/SHA256/119 829s ok 862 /checksum/SHA256/120 829s ok 863 /checksum/SHA256/121 829s ok 864 /checksum/SHA256/122 829s ok 865 /checksum/SHA256/123 829s ok 866 /checksum/SHA256/124 829s ok 867 /checksum/SHA256/125 829s ok 868 /checksum/SHA256/126 829s ok 869 /checksum/SHA256/127 829s ok 870 /checksum/SHA256/128 829s ok 871 /checksum/SHA256/129 829s ok 872 /checksum/SHA256/130 829s ok 873 /checksum/SHA256/131 829s ok 874 /checksum/SHA256/132 829s ok 875 /checksum/SHA256/133 829s ok 876 /checksum/SHA256/134 829s ok 877 /checksum/SHA256/135 829s ok 878 /checksum/SHA256/136 829s ok 879 /checksum/SHA256/137 829s ok 880 /checksum/SHA256/138 829s ok 881 /checksum/SHA256/139 829s ok 882 /checksum/SHA256/140 829s ok 883 /checksum/SHA256/141 829s ok 884 /checksum/SHA256/142 829s ok 885 /checksum/SHA256/143 829s ok 886 /checksum/SHA256/144 829s ok 887 /checksum/SHA256/145 829s ok 888 /checksum/SHA256/146 829s ok 889 /checksum/SHA256/147 829s ok 890 /checksum/SHA256/148 829s ok 891 /checksum/SHA256/149 829s ok 892 /checksum/SHA256/150 829s ok 893 /checksum/SHA256/151 829s ok 894 /checksum/SHA256/152 829s ok 895 /checksum/SHA256/153 829s ok 896 /checksum/SHA256/154 829s ok 897 /checksum/SHA256/155 829s ok 898 /checksum/SHA256/156 829s ok 899 /checksum/SHA256/157 829s ok 900 /checksum/SHA256/158 829s ok 901 /checksum/SHA256/159 829s ok 902 /checksum/SHA256/160 829s ok 903 /checksum/SHA256/161 829s ok 904 /checksum/SHA256/162 829s ok 905 /checksum/SHA256/163 829s ok 906 /checksum/SHA256/164 829s ok 907 /checksum/SHA256/165 829s ok 908 /checksum/SHA256/166 829s ok 909 /checksum/SHA256/167 829s ok 910 /checksum/SHA256/168 829s ok 911 /checksum/SHA256/169 829s ok 912 /checksum/SHA256/170 829s ok 913 /checksum/SHA256/171 829s ok 914 /checksum/SHA256/172 829s ok 915 /checksum/SHA256/173 829s ok 916 /checksum/SHA256/174 829s ok 917 /checksum/SHA256/175 829s ok 918 /checksum/SHA256/176 829s ok 919 /checksum/SHA256/177 829s ok 920 /checksum/SHA256/178 829s ok 921 /checksum/SHA256/179 829s ok 922 /checksum/SHA256/180 829s ok 923 /checksum/SHA256/181 829s ok 924 /checksum/SHA256/182 829s ok 925 /checksum/SHA256/183 829s ok 926 /checksum/SHA256/string 829s ok 927 /checksum/SHA256/bytes 829s # Start of reset tests 829s ok 928 /checksum/SHA256/reset/0 829s ok 929 /checksum/SHA256/reset/1 829s ok 930 /checksum/SHA256/reset/2 829s ok 931 /checksum/SHA256/reset/3 829s ok 932 /checksum/SHA256/reset/4 829s ok 933 /checksum/SHA256/reset/5 829s ok 934 /checksum/SHA256/reset/6 829s ok 935 /checksum/SHA256/reset/7 829s ok 936 /checksum/SHA256/reset/8 829s ok 937 /checksum/SHA256/reset/9 829s ok 938 /checksum/SHA256/reset/10 829s ok 939 /checksum/SHA256/reset/11 829s ok 940 /checksum/SHA256/reset/12 829s ok 941 /checksum/SHA256/reset/13 829s ok 942 /checksum/SHA256/reset/14 829s ok 943 /checksum/SHA256/reset/15 829s ok 944 /checksum/SHA256/reset/16 829s ok 945 /checksum/SHA256/reset/17 829s ok 946 /checksum/SHA256/reset/18 829s ok 947 /checksum/SHA256/reset/19 829s ok 948 /checksum/SHA256/reset/20 829s ok 949 /checksum/SHA256/reset/21 829s ok 950 /checksum/SHA256/reset/22 829s ok 951 /checksum/SHA256/reset/23 829s ok 952 /checksum/SHA256/reset/24 829s ok 953 /checksum/SHA256/reset/25 829s ok 954 /checksum/SHA256/reset/26 829s ok 955 /checksum/SHA256/reset/27 829s ok 956 /checksum/SHA256/reset/28 829s ok 957 /checksum/SHA256/reset/29 829s ok 958 /checksum/SHA256/reset/30 829s ok 959 /checksum/SHA256/reset/31 829s ok 960 /checksum/SHA256/reset/32 829s ok 961 /checksum/SHA256/reset/33 829s ok 962 /checksum/SHA256/reset/34 829s ok 963 /checksum/SHA256/reset/35 829s ok 964 /checksum/SHA256/reset/36 829s ok 965 /checksum/SHA256/reset/37 829s ok 966 /checksum/SHA256/reset/38 829s ok 967 /checksum/SHA256/reset/39 829s ok 968 /checksum/SHA256/reset/40 829s ok 969 /checksum/SHA256/reset/41 829s ok 970 /checksum/SHA256/reset/42 829s ok 971 /checksum/SHA256/reset/43 829s ok 972 /checksum/SHA256/reset/44 829s ok 973 /checksum/SHA256/reset/45 829s ok 974 /checksum/SHA256/reset/46 829s ok 975 /checksum/SHA256/reset/47 829s ok 976 /checksum/SHA256/reset/48 829s ok 977 /checksum/SHA256/reset/49 829s ok 978 /checksum/SHA256/reset/50 829s ok 979 /checksum/SHA256/reset/51 829s ok 980 /checksum/SHA256/reset/52 829s ok 981 /checksum/SHA256/reset/53 829s ok 982 /checksum/SHA256/reset/54 829s ok 983 /checksum/SHA256/reset/55 829s ok 984 /checksum/SHA256/reset/56 829s ok 985 /checksum/SHA256/reset/57 829s ok 986 /checksum/SHA256/reset/58 829s ok 987 /checksum/SHA256/reset/59 829s ok 988 /checksum/SHA256/reset/60 829s ok 989 /checksum/SHA256/reset/61 829s ok 990 /checksum/SHA256/reset/62 829s ok 991 /checksum/SHA256/reset/63 829s ok 992 /checksum/SHA256/reset/64 829s ok 993 /checksum/SHA256/reset/65 829s ok 994 /checksum/SHA256/reset/66 829s ok 995 /checksum/SHA256/reset/67 829s ok 996 /checksum/SHA256/reset/68 829s ok 997 /checksum/SHA256/reset/69 829s ok 998 /checksum/SHA256/reset/70 829s ok 999 /checksum/SHA256/reset/71 829s ok 1000 /checksum/SHA256/reset/72 829s ok 1001 /checksum/SHA256/reset/73 829s ok 1002 /checksum/SHA256/reset/74 829s ok 1003 /checksum/SHA256/reset/75 829s ok 1004 /checksum/SHA256/reset/76 829s ok 1005 /checksum/SHA256/reset/77 829s ok 1006 /checksum/SHA256/reset/78 829s ok 1007 /checksum/SHA256/reset/79 829s ok 1008 /checksum/SHA256/reset/80 829s ok 1009 /checksum/SHA256/reset/81 829s ok 1010 /checksum/SHA256/reset/82 829s ok 1011 /checksum/SHA256/reset/83 829s ok 1012 /checksum/SHA256/reset/84 829s ok 1013 /checksum/SHA256/reset/85 829s ok 1014 /checksum/SHA256/reset/86 829s ok 1015 /checksum/SHA256/reset/87 829s ok 1016 /checksum/SHA256/reset/88 829s ok 1017 /checksum/SHA256/reset/89 829s ok 1018 /checksum/SHA256/reset/90 829s ok 1019 /checksum/SHA256/reset/91 829s ok 1020 /checksum/SHA256/reset/92 829s ok 1021 /checksum/SHA256/reset/93 829s ok 1022 /checksum/SHA256/reset/94 829s ok 1023 /checksum/SHA256/reset/95 829s ok 1024 /checksum/SHA256/reset/96 829s ok 1025 /checksum/SHA256/reset/97 829s ok 1026 /checksum/SHA256/reset/98 829s ok 1027 /checksum/SHA256/reset/99 829s ok 1028 /checksum/SHA256/reset/100 829s ok 1029 /checksum/SHA256/reset/101 829s ok 1030 /checksum/SHA256/reset/102 829s ok 1031 /checksum/SHA256/reset/103 829s ok 1032 /checksum/SHA256/reset/104 829s ok 1033 /checksum/SHA256/reset/105 829s ok 1034 /checksum/SHA256/reset/106 829s ok 1035 /checksum/SHA256/reset/107 829s ok 1036 /checksum/SHA256/reset/108 829s ok 1037 /checksum/SHA256/reset/109 829s ok 1038 /checksum/SHA256/reset/110 829s ok 1039 /checksum/SHA256/reset/111 829s ok 1040 /checksum/SHA256/reset/112 829s ok 1041 /checksum/SHA256/reset/113 829s ok 1042 /checksum/SHA256/reset/114 829s ok 1043 /checksum/SHA256/reset/115 829s ok 1044 /checksum/SHA256/reset/116 829s ok 1045 /checksum/SHA256/reset/117 829s ok 1046 /checksum/SHA256/reset/118 829s ok 1047 /checksum/SHA256/reset/119 829s ok 1048 /checksum/SHA256/reset/120 829s ok 1049 /checksum/SHA256/reset/121 829s ok 1050 /checksum/SHA256/reset/122 829s ok 1051 /checksum/SHA256/reset/123 829s ok 1052 /checksum/SHA256/reset/124 829s ok 1053 /checksum/SHA256/reset/125 829s ok 1054 /checksum/SHA256/reset/126 829s ok 1055 /checksum/SHA256/reset/127 829s ok 1056 /checksum/SHA256/reset/128 829s ok 1057 /checksum/SHA256/reset/129 829s ok 1058 /checksum/SHA256/reset/130 829s ok 1059 /checksum/SHA256/reset/131 829s ok 1060 /checksum/SHA256/reset/132 829s ok 1061 /checksum/SHA256/reset/133 829s ok 1062 /checksum/SHA256/reset/134 829s ok 1063 /checksum/SHA256/reset/135 829s ok 1064 /checksum/SHA256/reset/136 829s ok 1065 /checksum/SHA256/reset/137 829s ok 1066 /checksum/SHA256/reset/138 829s ok 1067 /checksum/SHA256/reset/139 829s ok 1068 /checksum/SHA256/reset/140 829s ok 1069 /checksum/SHA256/reset/141 829s ok 1070 /checksum/SHA256/reset/142 829s ok 1071 /checksum/SHA256/reset/143 829s ok 1072 /checksum/SHA256/reset/144 829s ok 1073 /checksum/SHA256/reset/145 829s ok 1074 /checksum/SHA256/reset/146 829s ok 1075 /checksum/SHA256/reset/147 829s ok 1076 /checksum/SHA256/reset/148 829s ok 1077 /checksum/SHA256/reset/149 829s ok 1078 /checksum/SHA256/reset/150 829s ok 1079 /checksum/SHA256/reset/151 829s ok 1080 /checksum/SHA256/reset/152 829s ok 1081 /checksum/SHA256/reset/153 829s ok 1082 /checksum/SHA256/reset/154 829s ok 1083 /checksum/SHA256/reset/155 829s ok 1084 /checksum/SHA256/reset/156 829s ok 1085 /checksum/SHA256/reset/157 829s ok 1086 /checksum/SHA256/reset/158 829s ok 1087 /checksum/SHA256/reset/159 829s ok 1088 /checksum/SHA256/reset/160 829s ok 1089 /checksum/SHA256/reset/161 829s ok 1090 /checksum/SHA256/reset/162 829s ok 1091 /checksum/SHA256/reset/163 829s ok 1092 /checksum/SHA256/reset/164 829s ok 1093 /checksum/SHA256/reset/165 829s ok 1094 /checksum/SHA256/reset/166 829s ok 1095 /checksum/SHA256/reset/167 829s ok 1096 /checksum/SHA256/reset/168 829s ok 1097 /checksum/SHA256/reset/169 829s ok 1098 /checksum/SHA256/reset/170 829s ok 1099 /checksum/SHA256/reset/171 829s ok 1100 /checksum/SHA256/reset/172 829s ok 1101 /checksum/SHA256/reset/173 829s ok 1102 /checksum/SHA256/reset/174 829s ok 1103 /checksum/SHA256/reset/175 829s ok 1104 /checksum/SHA256/reset/176 829s ok 1105 /checksum/SHA256/reset/177 829s ok 1106 /checksum/SHA256/reset/178 829s ok 1107 /checksum/SHA256/reset/179 829s ok 1108 /checksum/SHA256/reset/180 829s ok 1109 /checksum/SHA256/reset/181 829s ok 1110 /checksum/SHA256/reset/182 829s ok 1111 /checksum/SHA256/reset/183 829s # End of reset tests 829s # End of SHA256 tests 829s # Start of SHA384 tests 829s ok 1112 /checksum/SHA384/0 829s ok 1113 /checksum/SHA384/1 829s ok 1114 /checksum/SHA384/2 829s ok 1115 /checksum/SHA384/3 829s ok 1116 /checksum/SHA384/4 829s ok 1117 /checksum/SHA384/5 829s ok 1118 /checksum/SHA384/6 829s ok 1119 /checksum/SHA384/7 829s ok 1120 /checksum/SHA384/8 829s ok 1121 /checksum/SHA384/9 829s ok 1122 /checksum/SHA384/10 829s ok 1123 /checksum/SHA384/11 829s ok 1124 /checksum/SHA384/12 829s ok 1125 /checksum/SHA384/13 829s ok 1126 /checksum/SHA384/14 829s ok 1127 /checksum/SHA384/15 829s ok 1128 /checksum/SHA384/16 829s ok 1129 /checksum/SHA384/17 829s ok 1130 /checksum/SHA384/18 829s ok 1131 /checksum/SHA384/19 829s ok 1132 /checksum/SHA384/20 829s ok 1133 /checksum/SHA384/21 829s ok 1134 /checksum/SHA384/22 829s ok 1135 /checksum/SHA384/23 829s ok 1136 /checksum/SHA384/24 829s ok 1137 /checksum/SHA384/25 829s ok 1138 /checksum/SHA384/26 829s ok 1139 /checksum/SHA384/27 829s ok 1140 /checksum/SHA384/28 829s ok 1141 /checksum/SHA384/29 829s ok 1142 /checksum/SHA384/30 829s ok 1143 /checksum/SHA384/31 829s ok 1144 /checksum/SHA384/32 829s ok 1145 /checksum/SHA384/33 829s ok 1146 /checksum/SHA384/34 829s ok 1147 /checksum/SHA384/35 829s ok 1148 /checksum/SHA384/36 829s ok 1149 /checksum/SHA384/37 829s ok 1150 /checksum/SHA384/38 829s ok 1151 /checksum/SHA384/39 829s ok 1152 /checksum/SHA384/40 829s ok 1153 /checksum/SHA384/41 829s ok 1154 /checksum/SHA384/42 829s ok 1155 /checksum/SHA384/43 829s ok 1156 /checksum/SHA384/44 829s ok 1157 /checksum/SHA384/45 829s ok 1158 /checksum/SHA384/46 829s ok 1159 /checksum/SHA384/47 829s ok 1160 /checksum/SHA384/48 829s ok 1161 /checksum/SHA384/49 829s ok 1162 /checksum/SHA384/50 829s ok 1163 /checksum/SHA384/51 829s ok 1164 /checksum/SHA384/52 829s ok 1165 /checksum/SHA384/53 829s ok 1166 /checksum/SHA384/54 829s ok 1167 /checksum/SHA384/55 829s ok 1168 /checksum/SHA384/56 829s ok 1169 /checksum/SHA384/57 829s ok 1170 /checksum/SHA384/58 829s ok 1171 /checksum/SHA384/59 829s ok 1172 /checksum/SHA384/60 829s ok 1173 /checksum/SHA384/61 829s ok 1174 /checksum/SHA384/62 829s ok 1175 /checksum/SHA384/63 829s ok 1176 /checksum/SHA384/64 829s ok 1177 /checksum/SHA384/65 829s ok 1178 /checksum/SHA384/66 829s ok 1179 /checksum/SHA384/67 829s ok 1180 /checksum/SHA384/68 829s ok 1181 /checksum/SHA384/69 829s ok 1182 /checksum/SHA384/70 829s ok 1183 /checksum/SHA384/71 829s ok 1184 /checksum/SHA384/72 829s ok 1185 /checksum/SHA384/73 829s ok 1186 /checksum/SHA384/74 829s ok 1187 /checksum/SHA384/75 829s ok 1188 /checksum/SHA384/76 829s ok 1189 /checksum/SHA384/77 829s ok 1190 /checksum/SHA384/78 829s ok 1191 /checksum/SHA384/79 829s ok 1192 /checksum/SHA384/80 829s ok 1193 /checksum/SHA384/81 829s ok 1194 /checksum/SHA384/82 829s ok 1195 /checksum/SHA384/83 829s ok 1196 /checksum/SHA384/84 829s ok 1197 /checksum/SHA384/85 829s ok 1198 /checksum/SHA384/86 829s ok 1199 /checksum/SHA384/87 829s ok 1200 /checksum/SHA384/88 829s ok 1201 /checksum/SHA384/89 829s ok 1202 /checksum/SHA384/90 829s ok 1203 /checksum/SHA384/91 829s ok 1204 /checksum/SHA384/92 829s ok 1205 /checksum/SHA384/93 829s ok 1206 /checksum/SHA384/94 829s ok 1207 /checksum/SHA384/95 829s ok 1208 /checksum/SHA384/96 829s ok 1209 /checksum/SHA384/97 829s ok 1210 /checksum/SHA384/98 829s ok 1211 /checksum/SHA384/99 829s ok 1212 /checksum/SHA384/100 829s ok 1213 /checksum/SHA384/101 829s ok 1214 /checksum/SHA384/102 829s ok 1215 /checksum/SHA384/103 829s ok 1216 /checksum/SHA384/104 829s ok 1217 /checksum/SHA384/105 829s ok 1218 /checksum/SHA384/106 829s ok 1219 /checksum/SHA384/107 829s ok 1220 /checksum/SHA384/108 829s ok 1221 /checksum/SHA384/109 829s ok 1222 /checksum/SHA384/110 829s ok 1223 /checksum/SHA384/111 829s ok 1224 /checksum/SHA384/112 829s ok 1225 /checksum/SHA384/113 829s ok 1226 /checksum/SHA384/114 829s ok 1227 /checksum/SHA384/115 829s ok 1228 /checksum/SHA384/116 829s ok 1229 /checksum/SHA384/117 829s ok 1230 /checksum/SHA384/118 829s ok 1231 /checksum/SHA384/119 829s ok 1232 /checksum/SHA384/120 829s ok 1233 /checksum/SHA384/121 829s ok 1234 /checksum/SHA384/122 829s ok 1235 /checksum/SHA384/123 829s ok 1236 /checksum/SHA384/124 829s ok 1237 /checksum/SHA384/125 829s ok 1238 /checksum/SHA384/126 829s ok 1239 /checksum/SHA384/127 829s ok 1240 /checksum/SHA384/128 829s ok 1241 /checksum/SHA384/129 829s ok 1242 /checksum/SHA384/130 829s ok 1243 /checksum/SHA384/131 829s ok 1244 /checksum/SHA384/132 829s ok 1245 /checksum/SHA384/133 829s ok 1246 /checksum/SHA384/134 829s ok 1247 /checksum/SHA384/135 829s ok 1248 /checksum/SHA384/136 829s ok 1249 /checksum/SHA384/137 829s ok 1250 /checksum/SHA384/138 829s ok 1251 /checksum/SHA384/139 829s ok 1252 /checksum/SHA384/140 829s ok 1253 /checksum/SHA384/141 829s ok 1254 /checksum/SHA384/142 829s ok 1255 /checksum/SHA384/143 829s ok 1256 /checksum/SHA384/144 829s ok 1257 /checksum/SHA384/145 829s ok 1258 /checksum/SHA384/146 829s ok 1259 /checksum/SHA384/147 829s ok 1260 /checksum/SHA384/148 829s ok 1261 /checksum/SHA384/149 829s ok 1262 /checksum/SHA384/150 829s ok 1263 /checksum/SHA384/151 829s ok 1264 /checksum/SHA384/152 829s ok 1265 /checksum/SHA384/153 829s ok 1266 /checksum/SHA384/154 829s ok 1267 /checksum/SHA384/155 829s ok 1268 /checksum/SHA384/156 829s ok 1269 /checksum/SHA384/157 829s ok 1270 /checksum/SHA384/158 829s ok 1271 /checksum/SHA384/159 829s ok 1272 /checksum/SHA384/160 829s ok 1273 /checksum/SHA384/161 829s ok 1274 /checksum/SHA384/162 829s ok 1275 /checksum/SHA384/163 829s ok 1276 /checksum/SHA384/164 829s ok 1277 /checksum/SHA384/165 829s ok 1278 /checksum/SHA384/166 829s ok 1279 /checksum/SHA384/167 829s ok 1280 /checksum/SHA384/168 829s ok 1281 /checksum/SHA384/169 829s ok 1282 /checksum/SHA384/170 829s ok 1283 /checksum/SHA384/171 829s ok 1284 /checksum/SHA384/172 829s ok 1285 /checksum/SHA384/173 829s ok 1286 /checksum/SHA384/174 829s ok 1287 /checksum/SHA384/175 829s ok 1288 /checksum/SHA384/176 829s ok 1289 /checksum/SHA384/177 829s ok 1290 /checksum/SHA384/178 829s ok 1291 /checksum/SHA384/179 829s ok 1292 /checksum/SHA384/180 829s ok 1293 /checksum/SHA384/181 829s ok 1294 /checksum/SHA384/182 829s ok 1295 /checksum/SHA384/183 829s ok 1296 /checksum/SHA384/string 829s ok 1297 /checksum/SHA384/bytes 829s # Start of reset tests 829s ok 1298 /checksum/SHA384/reset/0 829s ok 1299 /checksum/SHA384/reset/1 829s ok 1300 /checksum/SHA384/reset/2 829s ok 1301 /checksum/SHA384/reset/3 829s ok 1302 /checksum/SHA384/reset/4 829s ok 1303 /checksum/SHA384/reset/5 829s ok 1304 /checksum/SHA384/reset/6 829s ok 1305 /checksum/SHA384/reset/7 829s ok 1306 /checksum/SHA384/reset/8 829s ok 1307 /checksum/SHA384/reset/9 829s ok 1308 /checksum/SHA384/reset/10 829s ok 1309 /checksum/SHA384/reset/11 829s ok 1310 /checksum/SHA384/reset/12 829s ok 1311 /checksum/SHA384/reset/13 829s ok 1312 /checksum/SHA384/reset/14 829s ok 1313 /checksum/SHA384/reset/15 829s ok 1314 /checksum/SHA384/reset/16 829s ok 1315 /checksum/SHA384/reset/17 829s ok 1316 /checksum/SHA384/reset/18 829s ok 1317 /checksum/SHA384/reset/19 829s ok 1318 /checksum/SHA384/reset/20 829s ok 1319 /checksum/SHA384/reset/21 829s ok 1320 /checksum/SHA384/reset/22 829s ok 1321 /checksum/SHA384/reset/23 829s ok 1322 /checksum/SHA384/reset/24 829s ok 1323 /checksum/SHA384/reset/25 829s ok 1324 /checksum/SHA384/reset/26 829s ok 1325 /checksum/SHA384/reset/27 829s ok 1326 /checksum/SHA384/reset/28 829s ok 1327 /checksum/SHA384/reset/29 829s ok 1328 /checksum/SHA384/reset/30 829s ok 1329 /checksum/SHA384/reset/31 829s ok 1330 /checksum/SHA384/reset/32 829s ok 1331 /checksum/SHA384/reset/33 829s ok 1332 /checksum/SHA384/reset/34 829s ok 1333 /checksum/SHA384/reset/35 829s ok 1334 /checksum/SHA384/reset/36 829s ok 1335 /checksum/SHA384/reset/37 829s ok 1336 /checksum/SHA384/reset/38 829s ok 1337 /checksum/SHA384/reset/39 829s ok 1338 /checksum/SHA384/reset/40 829s ok 1339 /checksum/SHA384/reset/41 829s ok 1340 /checksum/SHA384/reset/42 829s ok 1341 /checksum/SHA384/reset/43 829s ok 1342 /checksum/SHA384/reset/44 829s ok 1343 /checksum/SHA384/reset/45 829s ok 1344 /checksum/SHA384/reset/46 829s ok 1345 /checksum/SHA384/reset/47 829s ok 1346 /checksum/SHA384/reset/48 829s ok 1347 /checksum/SHA384/reset/49 829s ok 1348 /checksum/SHA384/reset/50 829s ok 1349 /checksum/SHA384/reset/51 829s ok 1350 /checksum/SHA384/reset/52 829s ok 1351 /checksum/SHA384/reset/53 829s ok 1352 /checksum/SHA384/reset/54 829s ok 1353 /checksum/SHA384/reset/55 829s ok 1354 /checksum/SHA384/reset/56 829s ok 1355 /checksum/SHA384/reset/57 829s ok 1356 /checksum/SHA384/reset/58 829s ok 1357 /checksum/SHA384/reset/59 829s ok 1358 /checksum/SHA384/reset/60 829s ok 1359 /checksum/SHA384/reset/61 829s ok 1360 /checksum/SHA384/reset/62 829s ok 1361 /checksum/SHA384/reset/63 829s ok 1362 /checksum/SHA384/reset/64 829s ok 1363 /checksum/SHA384/reset/65 829s ok 1364 /checksum/SHA384/reset/66 829s ok 1365 /checksum/SHA384/reset/67 829s ok 1366 /checksum/SHA384/reset/68 829s ok 1367 /checksum/SHA384/reset/69 829s ok 1368 /checksum/SHA384/reset/70 829s ok 1369 /checksum/SHA384/reset/71 829s ok 1370 /checksum/SHA384/reset/72 829s ok 1371 /checksum/SHA384/reset/73 829s ok 1372 /checksum/SHA384/reset/74 829s ok 1373 /checksum/SHA384/reset/75 829s ok 1374 /checksum/SHA384/reset/76 829s ok 1375 /checksum/SHA384/reset/77 829s ok 1376 /checksum/SHA384/reset/78 829s ok 1377 /checksum/SHA384/reset/79 829s ok 1378 /checksum/SHA384/reset/80 829s ok 1379 /checksum/SHA384/reset/81 829s ok 1380 /checksum/SHA384/reset/82 829s ok 1381 /checksum/SHA384/reset/83 829s ok 1382 /checksum/SHA384/reset/84 829s ok 1383 /checksum/SHA384/reset/85 829s ok 1384 /checksum/SHA384/reset/86 829s ok 1385 /checksum/SHA384/reset/87 829s ok 1386 /checksum/SHA384/reset/88 829s ok 1387 /checksum/SHA384/reset/89 829s ok 1388 /checksum/SHA384/reset/90 829s ok 1389 /checksum/SHA384/reset/91 829s ok 1390 /checksum/SHA384/reset/92 829s ok 1391 /checksum/SHA384/reset/93 829s ok 1392 /checksum/SHA384/reset/94 829s ok 1393 /checksum/SHA384/reset/95 829s ok 1394 /checksum/SHA384/reset/96 829s ok 1395 /checksum/SHA384/reset/97 829s ok 1396 /checksum/SHA384/reset/98 829s ok 1397 /checksum/SHA384/reset/99 829s ok 1398 /checksum/SHA384/reset/100 829s ok 1399 /checksum/SHA384/reset/101 829s ok 1400 /checksum/SHA384/reset/102 829s ok 1401 /checksum/SHA384/reset/103 829s ok 1402 /checksum/SHA384/reset/104 829s ok 1403 /checksum/SHA384/reset/105 829s ok 1404 /checksum/SHA384/reset/106 829s ok 1405 /checksum/SHA384/reset/107 829s ok 1406 /checksum/SHA384/reset/108 829s ok 1407 /checksum/SHA384/reset/109 829s ok 1408 /checksum/SHA384/reset/110 829s ok 1409 /checksum/SHA384/reset/111 829s ok 1410 /checksum/SHA384/reset/112 829s ok 1411 /checksum/SHA384/reset/113 829s ok 1412 /checksum/SHA384/reset/114 829s ok 1413 /checksum/SHA384/reset/115 829s ok 1414 /checksum/SHA384/reset/116 829s ok 1415 /checksum/SHA384/reset/117 829s ok 1416 /checksum/SHA384/reset/118 829s ok 1417 /checksum/SHA384/reset/119 829s ok 1418 /checksum/SHA384/reset/120 829s ok 1419 /checksum/SHA384/reset/121 829s ok 1420 /checksum/SHA384/reset/122 829s ok 1421 /checksum/SHA384/reset/123 829s ok 1422 /checksum/SHA384/reset/124 829s ok 1423 /checksum/SHA384/reset/125 829s ok 1424 /checksum/SHA384/reset/126 829s ok 1425 /checksum/SHA384/reset/127 829s ok 1426 /checksum/SHA384/reset/128 829s ok 1427 /checksum/SHA384/reset/129 829s ok 1428 /checksum/SHA384/reset/130 829s ok 1429 /checksum/SHA384/reset/131 829s ok 1430 /checksum/SHA384/reset/132 829s ok 1431 /checksum/SHA384/reset/133 829s ok 1432 /checksum/SHA384/reset/134 829s ok 1433 /checksum/SHA384/reset/135 829s ok 1434 /checksum/SHA384/reset/136 829s ok 1435 /checksum/SHA384/reset/137 829s ok 1436 /checksum/SHA384/reset/138 829s ok 1437 /checksum/SHA384/reset/139 829s ok 1438 /checksum/SHA384/reset/140 829s ok 1439 /checksum/SHA384/reset/141 829s ok 1440 /checksum/SHA384/reset/142 829s ok 1441 /checksum/SHA384/reset/143 829s ok 1442 /checksum/SHA384/reset/144 829s ok 1443 /checksum/SHA384/reset/145 829s ok 1444 /checksum/SHA384/reset/146 829s ok 1445 /checksum/SHA384/reset/147 829s ok 1446 /checksum/SHA384/reset/148 829s ok 1447 /checksum/SHA384/reset/149 829s ok 1448 /checksum/SHA384/reset/150 829s ok 1449 /checksum/SHA384/reset/151 829s ok 1450 /checksum/SHA384/reset/152 829s ok 1451 /checksum/SHA384/reset/153 829s ok 1452 /checksum/SHA384/reset/154 829s ok 1453 /checksum/SHA384/reset/155 829s ok 1454 /checksum/SHA384/reset/156 829s ok 1455 /checksum/SHA384/reset/157 829s ok 1456 /checksum/SHA384/reset/158 829s ok 1457 /checksum/SHA384/reset/159 829s ok 1458 /checksum/SHA384/reset/160 829s ok 1459 /checksum/SHA384/reset/161 829s ok 1460 /checksum/SHA384/reset/162 829s ok 1461 /checksum/SHA384/reset/163 829s ok 1462 /checksum/SHA384/reset/164 829s ok 1463 /checksum/SHA384/reset/165 829s ok 1464 /checksum/SHA384/reset/166 829s ok 1465 /checksum/SHA384/reset/167 829s ok 1466 /checksum/SHA384/reset/168 829s ok 1467 /checksum/SHA384/reset/169 829s ok 1468 /checksum/SHA384/reset/170 829s ok 1469 /checksum/SHA384/reset/171 829s ok 1470 /checksum/SHA384/reset/172 829s ok 1471 /checksum/SHA384/reset/173 829s ok 1472 /checksum/SHA384/reset/174 829s ok 1473 /checksum/SHA384/reset/175 829s ok 1474 /checksum/SHA384/reset/176 829s ok 1475 /checksum/SHA384/reset/177 829s ok 1476 /checksum/SHA384/reset/178 829s ok 1477 /checksum/SHA384/reset/179 829s ok 1478 /checksum/SHA384/reset/180 829s ok 1479 /checksum/SHA384/reset/181 829s ok 1480 /checksum/SHA384/reset/182 829s ok 1481 /checksum/SHA384/reset/183 829s # End of reset tests 829s # End of SHA384 tests 829s # Start of SHA512 tests 829s ok 1482 /checksum/SHA512/0 829s ok 1483 /checksum/SHA512/1 829s ok 1484 /checksum/SHA512/2 829s ok 1485 /checksum/SHA512/3 829s ok 1486 /checksum/SHA512/4 829s ok 1487 /checksum/SHA512/5 829s ok 1488 /checksum/SHA512/6 829s ok 1489 /checksum/SHA512/7 829s ok 1490 /checksum/SHA512/8 829s ok 1491 /checksum/SHA512/9 829s ok 1492 /checksum/SHA512/10 829s ok 1493 /checksum/SHA512/11 829s ok 1494 /checksum/SHA512/12 829s ok 1495 /checksum/SHA512/13 829s ok 1496 /checksum/SHA512/14 829s ok 1497 /checksum/SHA512/15 829s ok 1498 /checksum/SHA512/16 829s ok 1499 /checksum/SHA512/17 829s ok 1500 /checksum/SHA512/18 829s ok 1501 /checksum/SHA512/19 829s ok 1502 /checksum/SHA512/20 829s ok 1503 /checksum/SHA512/21 829s ok 1504 /checksum/SHA512/22 829s ok 1505 /checksum/SHA512/23 829s ok 1506 /checksum/SHA512/24 829s ok 1507 /checksum/SHA512/25 829s ok 1508 /checksum/SHA512/26 829s ok 1509 /checksum/SHA512/27 829s ok 1510 /checksum/SHA512/28 829s ok 1511 /checksum/SHA512/29 829s ok 1512 /checksum/SHA512/30 829s ok 1513 /checksum/SHA512/31 829s ok 1514 /checksum/SHA512/32 829s ok 1515 /checksum/SHA512/33 829s ok 1516 /checksum/SHA512/34 829s ok 1517 /checksum/SHA512/35 829s ok 1518 /checksum/SHA512/36 829s ok 1519 /checksum/SHA512/37 829s ok 1520 /checksum/SHA512/38 829s ok 1521 /checksum/SHA512/39 829s ok 1522 /checksum/SHA512/40 829s ok 1523 /checksum/SHA512/41 829s ok 1524 /checksum/SHA512/42 829s ok 1525 /checksum/SHA512/43 829s ok 1526 /checksum/SHA512/44 829s ok 1527 /checksum/SHA512/45 829s ok 1528 /checksum/SHA512/46 829s ok 1529 /checksum/SHA512/47 829s ok 1530 /checksum/SHA512/48 829s ok 1531 /checksum/SHA512/49 829s ok 1532 /checksum/SHA512/50 829s ok 1533 /checksum/SHA512/51 829s ok 1534 /checksum/SHA512/52 829s ok 1535 /checksum/SHA512/53 829s ok 1536 /checksum/SHA512/54 829s ok 1537 /checksum/SHA512/55 829s ok 1538 /checksum/SHA512/56 829s ok 1539 /checksum/SHA512/57 829s ok 1540 /checksum/SHA512/58 829s ok 1541 /checksum/SHA512/59 829s ok 1542 /checksum/SHA512/60 829s ok 1543 /checksum/SHA512/61 829s ok 1544 /checksum/SHA512/62 829s ok 1545 /checksum/SHA512/63 829s ok 1546 /checksum/SHA512/64 829s ok 1547 /checksum/SHA512/65 829s ok 1548 /checksum/SHA512/66 829s ok 1549 /checksum/SHA512/67 829s ok 1550 /checksum/SHA512/68 829s ok 1551 /checksum/SHA512/69 829s ok 1552 /checksum/SHA512/70 829s ok 1553 /checksum/SHA512/71 829s ok 1554 /checksum/SHA512/72 829s ok 1555 /checksum/SHA512/73 829s ok 1556 /checksum/SHA512/74 829s ok 1557 /checksum/SHA512/75 829s ok 1558 /checksum/SHA512/76 829s ok 1559 /checksum/SHA512/77 829s ok 1560 /checksum/SHA512/78 829s ok 1561 /checksum/SHA512/79 829s ok 1562 /checksum/SHA512/80 829s ok 1563 /checksum/SHA512/81 829s ok 1564 /checksum/SHA512/82 829s ok 1565 /checksum/SHA512/83 829s ok 1566 /checksum/SHA512/84 829s ok 1567 /checksum/SHA512/85 829s ok 1568 /checksum/SHA512/86 829s ok 1569 /checksum/SHA512/87 829s ok 1570 /checksum/SHA512/88 829s ok 1571 /checksum/SHA512/89 829s ok 1572 /checksum/SHA512/90 829s ok 1573 /checksum/SHA512/91 829s ok 1574 /checksum/SHA512/92 829s ok 1575 /checksum/SHA512/93 829s ok 1576 /checksum/SHA512/94 829s ok 1577 /checksum/SHA512/95 829s ok 1578 /checksum/SHA512/96 829s ok 1579 /checksum/SHA512/97 829s ok 1580 /checksum/SHA512/98 829s ok 1581 /checksum/SHA512/99 829s ok 1582 /checksum/SHA512/100 829s ok 1583 /checksum/SHA512/101 829s ok 1584 /checksum/SHA512/102 829s ok 1585 /checksum/SHA512/103 829s ok 1586 /checksum/SHA512/104 829s ok 1587 /checksum/SHA512/105 829s ok 1588 /checksum/SHA512/106 829s ok 1589 /checksum/SHA512/107 829s ok 1590 /checksum/SHA512/108 829s ok 1591 /checksum/SHA512/109 829s ok 1592 /checksum/SHA512/110 829s ok 1593 /checksum/SHA512/111 829s ok 1594 /checksum/SHA512/112 829s ok 1595 /checksum/SHA512/113 829s ok 1596 /checksum/SHA512/114 829s ok 1597 /checksum/SHA512/115 829s ok 1598 /checksum/SHA512/116 829s ok 1599 /checksum/SHA512/117 829s ok 1600 /checksum/SHA512/118 829s ok 1601 /checksum/SHA512/119 829s ok 1602 /checksum/SHA512/120 829s ok 1603 /checksum/SHA512/121 829s ok 1604 /checksum/SHA512/122 829s ok 1605 /checksum/SHA512/123 829s ok 1606 /checksum/SHA512/124 829s ok 1607 /checksum/SHA512/125 829s ok 1608 /checksum/SHA512/126 829s ok 1609 /checksum/SHA512/127 829s ok 1610 /checksum/SHA512/128 829s ok 1611 /checksum/SHA512/129 829s ok 1612 /checksum/SHA512/130 829s ok 1613 /checksum/SHA512/131 829s ok 1614 /checksum/SHA512/132 829s ok 1615 /checksum/SHA512/133 829s ok 1616 /checksum/SHA512/134 829s ok 1617 /checksum/SHA512/135 829s ok 1618 /checksum/SHA512/136 829s ok 1619 /checksum/SHA512/137 829s ok 1620 /checksum/SHA512/138 829s ok 1621 /checksum/SHA512/139 829s ok 1622 /checksum/SHA512/140 829s ok 1623 /checksum/SHA512/141 829s ok 1624 /checksum/SHA512/142 829s ok 1625 /checksum/SHA512/143 829s ok 1626 /checksum/SHA512/144 829s ok 1627 /checksum/SHA512/145 829s ok 1628 /checksum/SHA512/146 829s ok 1629 /checksum/SHA512/147 829s ok 1630 /checksum/SHA512/148 829s ok 1631 /checksum/SHA512/149 829s ok 1632 /checksum/SHA512/150 829s ok 1633 /checksum/SHA512/151 829s ok 1634 /checksum/SHA512/152 829s ok 1635 /checksum/SHA512/153 829s ok 1636 /checksum/SHA512/154 829s ok 1637 /checksum/SHA512/155 829s ok 1638 /checksum/SHA512/156 829s ok 1639 /checksum/SHA512/157 829s ok 1640 /checksum/SHA512/158 829s ok 1641 /checksum/SHA512/159 829s ok 1642 /checksum/SHA512/160 829s ok 1643 /checksum/SHA512/161 829s ok 1644 /checksum/SHA512/162 829s ok 1645 /checksum/SHA512/163 829s ok 1646 /checksum/SHA512/164 829s ok 1647 /checksum/SHA512/165 829s ok 1648 /checksum/SHA512/166 829s ok 1649 /checksum/SHA512/167 829s ok 1650 /checksum/SHA512/168 829s ok 1651 /checksum/SHA512/169 829s ok 1652 /checksum/SHA512/170 829s ok 1653 /checksum/SHA512/171 829s ok 1654 /checksum/SHA512/172 829s ok 1655 /checksum/SHA512/173 829s ok 1656 /checksum/SHA512/174 829s ok 1657 /checksum/SHA512/175 829s ok 1658 /checksum/SHA512/176 829s ok 1659 /checksum/SHA512/177 829s ok 1660 /checksum/SHA512/178 829s ok 1661 /checksum/SHA512/179 829s ok 1662 /checksum/SHA512/180 829s ok 1663 /checksum/SHA512/181 829s ok 1664 /checksum/SHA512/182 829s ok 1665 /checksum/SHA512/183 829s ok 1666 /checksum/SHA512/string 829s ok 1667 /checksum/SHA512/bytes 829s # Start of reset tests 829s ok 1668 /checksum/SHA512/reset/0 829s ok 1669 /checksum/SHA512/reset/1 829s ok 1670 /checksum/SHA512/reset/2 829s ok 1671 /checksum/SHA512/reset/3 829s ok 1672 /checksum/SHA512/reset/4 829s ok 1673 /checksum/SHA512/reset/5 829s ok 1674 /checksum/SHA512/reset/6 829s ok 1675 /checksum/SHA512/reset/7 829s ok 1676 /checksum/SHA512/reset/8 829s ok 1677 /checksum/SHA512/reset/9 829s ok 1678 /checksum/SHA512/reset/10 829s ok 1679 /checksum/SHA512/reset/11 829s ok 1680 /checksum/SHA512/reset/12 829s ok 1681 /checksum/SHA512/reset/13 829s ok 1682 /checksum/SHA512/reset/14 829s ok 1683 /checksum/SHA512/reset/15 829s ok 1684 /checksum/SHA512/reset/16 829s ok 1685 /checksum/SHA512/reset/17 829s ok 1686 /checksum/SHA512/reset/18 829s ok 1687 /checksum/SHA512/reset/19 829s ok 1688 /checksum/SHA512/reset/20 829s ok 1689 /checksum/SHA512/reset/21 829s ok 1690 /checksum/SHA512/reset/22 829s ok 1691 /checksum/SHA512/reset/23 829s ok 1692 /checksum/SHA512/reset/24 829s ok 1693 /checksum/SHA512/reset/25 829s ok 1694 /checksum/SHA512/reset/26 829s ok 1695 /checksum/SHA512/reset/27 829s ok 1696 /checksum/SHA512/reset/28 829s ok 1697 /checksum/SHA512/reset/29 829s ok 1698 /checksum/SHA512/reset/30 829s ok 1699 /checksum/SHA512/reset/31 829s ok 1700 /checksum/SHA512/reset/32 829s ok 1701 /checksum/SHA512/reset/33 829s ok 1702 /checksum/SHA512/reset/34 829s ok 1703 /checksum/SHA512/reset/35 829s ok 1704 /checksum/SHA512/reset/36 829s ok 1705 /checksum/SHA512/reset/37 829s ok 1706 /checksum/SHA512/reset/38 829s ok 1707 /checksum/SHA512/reset/39 829s ok 1708 /checksum/SHA512/reset/40 829s ok 1709 /checksum/SHA512/reset/41 829s ok 1710 /checksum/SHA512/reset/42 829s ok 1711 /checksum/SHA512/reset/43 829s ok 1712 /checksum/SHA512/reset/44 829s ok 1713 /checksum/SHA512/reset/45 829s ok 1714 /checksum/SHA512/reset/46 829s ok 1715 /checksum/SHA512/reset/47 829s ok 1716 /checksum/SHA512/reset/48 829s ok 1717 /checksum/SHA512/reset/49 829s ok 1718 /checksum/SHA512/reset/50 829s ok 1719 /checksum/SHA512/reset/51 829s ok 1720 /checksum/SHA512/reset/52 829s ok 1721 /checksum/SHA512/reset/53 829s ok 1722 /checksum/SHA512/reset/54 829s ok 1723 /checksum/SHA512/reset/55 829s ok 1724 /checksum/SHA512/reset/56 829s ok 1725 /checksum/SHA512/reset/57 829s ok 1726 /checksum/SHA512/reset/58 829s ok 1727 /checksum/SHA512/reset/59 829s ok 1728 /checksum/SHA512/reset/60 829s ok 1729 /checksum/SHA512/reset/61 829s ok 1730 /checksum/SHA512/reset/62 829s ok 1731 /checksum/SHA512/reset/63 829s ok 1732 /checksum/SHA512/reset/64 829s ok 1733 /checksum/SHA512/reset/65 829s ok 1734 /checksum/SHA512/reset/66 829s ok 1735 /checksum/SHA512/reset/67 829s ok 1736 /checksum/SHA512/reset/68 829s ok 1737 /checksum/SHA512/reset/69 829s ok 1738 /checksum/SHA512/reset/70 829s ok 1739 /checksum/SHA512/reset/71 829s ok 1740 /checksum/SHA512/reset/72 829s ok 1741 /checksum/SHA512/reset/73 829s ok 1742 /checksum/SHA512/reset/74 829s ok 1743 /checksum/SHA512/reset/75 829s ok 1744 /checksum/SHA512/reset/76 829s ok 1745 /checksum/SHA512/reset/77 829s ok 1746 /checksum/SHA512/reset/78 829s ok 1747 /checksum/SHA512/reset/79 829s ok 1748 /checksum/SHA512/reset/80 829s ok 1749 /checksum/SHA512/reset/81 829s ok 1750 /checksum/SHA512/reset/82 829s ok 1751 /checksum/SHA512/reset/83 829s ok 1752 /checksum/SHA512/reset/84 829s ok 1753 /checksum/SHA512/reset/85 829s ok 1754 /checksum/SHA512/reset/86 829s ok 1755 /checksum/SHA512/reset/87 829s ok 1756 /checksum/SHA512/reset/88 829s ok 1757 /checksum/SHA512/reset/89 829s ok 1758 /checksum/SHA512/reset/90 829s ok 1759 /checksum/SHA512/reset/91 829s ok 1760 /checksum/SHA512/reset/92 829s ok 1761 /checksum/SHA512/reset/93 829s ok 1762 /checksum/SHA512/reset/94 829s ok 1763 /checksum/SHA512/reset/95 829s ok 1764 /checksum/SHA512/reset/96 829s ok 1765 /checksum/SHA512/reset/97 829s ok 1766 /checksum/SHA512/reset/98 829s ok 1767 /checksum/SHA512/reset/99 829s ok 1768 /checksum/SHA512/reset/100 829s ok 1769 /checksum/SHA512/reset/101 829s ok 1770 /checksum/SHA512/reset/102 829s ok 1771 /checksum/SHA512/reset/103 829s ok 1772 /checksum/SHA512/reset/104 829s ok 1773 /checksum/SHA512/reset/105 829s ok 1774 /checksum/SHA512/reset/106 829s ok 1775 /checksum/SHA512/reset/107 829s ok 1776 /checksum/SHA512/reset/108 829s ok 1777 /checksum/SHA512/reset/109 829s ok 1778 /checksum/SHA512/reset/110 829s ok 1779 /checksum/SHA512/reset/111 829s ok 1780 /checksum/SHA512/reset/112 829s ok 1781 /checksum/SHA512/reset/113 829s ok 1782 /checksum/SHA512/reset/114 829s ok 1783 /checksum/SHA512/reset/115 829s ok 1784 /checksum/SHA512/reset/116 829s ok 1785 /checksum/SHA512/reset/117 829s ok 1786 /checksum/SHA512/reset/118 829s ok 1787 /checksum/SHA512/reset/119 829s ok 1788 /checksum/SHA512/reset/120 829s ok 1789 /checksum/SHA512/reset/121 829s ok 1790 /checksum/SHA512/reset/122 829s ok 1791 /checksum/SHA512/reset/123 829s ok 1792 /checksum/SHA512/reset/124 829s ok 1793 /checksum/SHA512/reset/125 829s ok 1794 /checksum/SHA512/reset/126 829s ok 1795 /checksum/SHA512/reset/127 829s ok 1796 /checksum/SHA512/reset/128 829s ok 1797 /checksum/SHA512/reset/129 829s ok 1798 /checksum/SHA512/reset/130 829s ok 1799 /checksum/SHA512/reset/131 829s ok 1800 /checksum/SHA512/reset/132 829s ok 1801 /checksum/SHA512/reset/133 829s ok 1802 /checksum/SHA512/reset/134 829s ok 1803 /checksum/SHA512/reset/135 829s ok 1804 /checksum/SHA512/reset/136 829s ok 1805 /checksum/SHA512/reset/137 829s ok 1806 /checksum/SHA512/reset/138 829s ok 1807 /checksum/SHA512/reset/139 829s ok 1808 /checksum/SHA512/reset/140 829s ok 1809 /checksum/SHA512/reset/141 829s ok 1810 /checksum/SHA512/reset/142 829s ok 1811 /checksum/SHA512/reset/143 829s ok 1812 /checksum/SHA512/reset/144 829s ok 1813 /checksum/SHA512/reset/145 829s ok 1814 /checksum/SHA512/reset/146 829s ok 1815 /checksum/SHA512/reset/147 829s ok 1816 /checksum/SHA512/reset/148 829s ok 1817 /checksum/SHA512/reset/149 829s ok 1818 /checksum/SHA512/reset/150 829s ok 1819 /checksum/SHA512/reset/151 829s ok 1820 /checksum/SHA512/reset/152 829s ok 1821 /checksum/SHA512/reset/153 829s ok 1822 /checksum/SHA512/reset/154 829s ok 1823 /checksum/SHA512/reset/155 829s ok 1824 /checksum/SHA512/reset/156 829s ok 1825 /checksum/SHA512/reset/157 829s ok 1826 /checksum/SHA512/reset/158 829s ok 1827 /checksum/SHA512/reset/159 829s ok 1828 /checksum/SHA512/reset/160 829s ok 1829 /checksum/SHA512/reset/161 829s ok 1830 /checksum/SHA512/reset/162 829s ok 1831 /checksum/SHA512/reset/163 829s ok 1832 /checksum/SHA512/reset/164 829s ok 1833 /checksum/SHA512/reset/165 829s ok 1834 /checksum/SHA512/reset/166 829s ok 1835 /checksum/SHA512/reset/167 829s ok 1836 /checksum/SHA512/reset/168 829s ok 1837 /checksum/SHA512/reset/169 829s ok 1838 /checksum/SHA512/reset/170 829s ok 1839 /checksum/SHA512/reset/171 829s ok 1840 /checksum/SHA512/reset/172 829s ok 1841 /checksum/SHA512/reset/173 829s ok 1842 /checksum/SHA512/reset/174 829s ok 1843 /checksum/SHA512/reset/175 829s ok 1844 /checksum/SHA512/reset/176 829s ok 1845 /checksum/SHA512/reset/177 829s ok 1846 /checksum/SHA512/reset/178 829s ok 1847 /checksum/SHA512/reset/179 829s ok 1848 /checksum/SHA512/reset/180 829s ok 1849 /checksum/SHA512/reset/181 829s ok 1850 /checksum/SHA512/reset/182 829s ok 1851 /checksum/SHA512/reset/183 829s # End of reset tests 829s # End of SHA512 tests 829s # End of checksum tests 829s ok - glib/checksum.test 830s # Running test: glib/contenttype.test 830s TAP version 14 830s # random seed: R02S14d73c7f48cef30a206c98b9182bb47e 830s 1..14 830s # Start of contenttype tests 830s ok 1 /contenttype/guess 830s ok 2 /contenttype/guess_svg_from_data 830s ok 3 /contenttype/mime_to_content # SKIP mime from content type test not implemented on UNIX 830s ok 4 /contenttype/mime_from_content # SKIP mime from content type test not implemented on UNIX 830s ok 5 /contenttype/unknown 830s ok 6 /contenttype/subtype 830s ok 7 /contenttype/list 830s ok 8 /contenttype/executable 830s ok 9 /contenttype/description 830s ok 10 /contenttype/icon 830s ok 11 /contenttype/symbolic-icon 830s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 830s ok 12 /contenttype/tree 830s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3168 830s ok 13 /contenttype/tree_invalid_encoding 830s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=782311 830s ok 14 /contenttype/test_type_is_a_special_case 830s # End of contenttype tests 830s ok - glib/contenttype.test 830s # Running test: glib/timer.test 830s TAP version 14 830s # random seed: R02S2c4a746fa35719c6ffb787dc98178bbf 830s 1..10 830s # Start of timer tests 830s ok 1 /timer/basic # SKIP Not reliable due to floating-point rounding (glib#820) 830s ok 2 /timer/stop 830s ok 3 /timer/continue 830s ok 4 /timer/reset 830s ok 5 /timer/is_active 830s # End of timer tests 830s # Start of timeval tests 830s ok 6 /timeval/add 830s ok 7 /timeval/from-iso8601 830s ok 8 /timeval/to-iso8601 830s # Start of to-iso8601 tests 830s ok 9 /timeval/to-iso8601/overflow 830s # End of to-iso8601 tests 830s # End of timeval tests 830s # Start of usleep tests 830s ok 10 /usleep/with-zero-wait 830s # End of usleep tests 830s ok - glib/timer.test 830s # Running test: glib/atomic-c-17.test 830s TAP version 14 830s # random seed: R02S47136e69e42ba0038225813033ef96ab 830s 1..2 830s # Start of atomic tests 830s ok 1 /atomic/types 830s ok 2 /atomic/threaded 830s # End of atomic tests 830s ok - glib/atomic-c-17.test 830s # SUMMARY: total=323; passed=322; skipped=1; failed=0; user=186.4s; system=69.4s; maxrss=151408 830s autopkgtest [18:50:33]: test installed-tests: -----------------------] 830s autopkgtest [18:50:33]: test installed-tests: - - - - - - - - - - results - - - - - - - - - - 830s installed-tests PASS 831s autopkgtest [18:50:34]: test closure-refcount: preparing testbed 831s Reading package lists... 831s Building dependency tree... 831s Reading state information... 831s Starting pkgProblemResolver with broken count: 0 831s Starting 2 pkgProblemResolver with broken count: 0 831s Done 832s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 833s autopkgtest [18:50:36]: test closure-refcount: [----------------------- 833s Running test: glib/closure-refcount.test 833s TAP version 14 833s # random seed: R02Se9ea01ad89ae7d0ba5d014915e725feb 833s 1..1 833s # Start of closure tests 833s ok 1 /closure/refcount # SKIP Known to be flaky on arm* (#880883, #917983) 833s # End of closure tests 833s PASS: glib/closure-refcount.test 833s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=3280 833s autopkgtest [18:50:36]: test closure-refcount: -----------------------] 833s autopkgtest [18:50:36]: test closure-refcount: - - - - - - - - - - results - - - - - - - - - - 833s closure-refcount PASS 834s autopkgtest [18:50:37]: test debugcontroller: preparing testbed 834s Reading package lists... 834s Building dependency tree... 834s Reading state information... 834s Starting pkgProblemResolver with broken count: 0 834s Starting 2 pkgProblemResolver with broken count: 0 834s Done 835s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 836s autopkgtest [18:50:39]: test debugcontroller: [----------------------- 836s Running test: glib/debugcontroller.test 836s TAP version 14 836s # random seed: R02Sa89d7afa7ec8eed41cc965ffdb078bc5 836s 1..3 836s # Start of debug-controller tests 836s # Start of dbus tests 836s # /debug-controller/dbus/basic summary: Smoketest for construction and setting of a #GDebugControllerDBus. 836s # GLib-GIO-DEBUG: Debug output enabled 836s # GLib-GIO-DEBUG: Debug output disabled 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s ok 1 /debug-controller/dbus/basic 836s # /debug-controller/dbus/duplicate summary: Test that creating a second #GDebugControllerDBus on the same D-Bus connection fails. 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s ok 2 /debug-controller/dbus/duplicate 836s # /debug-controller/dbus/properties summary: Test getting and setting properties on a #GDebugControllerDBus. 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 836s # GLib-GIO-DEBUG: Debug output enabled 836s # GLib-GIO-DEBUG: Debug output disabled 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 836s ok 3 /debug-controller/dbus/properties 836s # End of dbus tests 836s # End of debug-controller tests 836s PASS: glib/debugcontroller.test 836s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=5908 836s autopkgtest [18:50:39]: test debugcontroller: -----------------------] 837s debugcontroller PASS 837s autopkgtest [18:50:40]: test debugcontroller: - - - - - - - - - - results - - - - - - - - - - 837s autopkgtest [18:50:40]: test gdbus-server-auth: preparing testbed 837s Reading package lists... 837s Building dependency tree... 837s Reading state information... 837s Starting pkgProblemResolver with broken count: 0 838s Starting 2 pkgProblemResolver with broken count: 0 838s Done 838s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 839s autopkgtest [18:50:42]: test gdbus-server-auth: [----------------------- 839s Running test: glib/gdbus-server-auth.test 839s TAP version 14 839s # random seed: R02S2fca6ec3ce139b4954989f00ef815416 839s 1..9 839s # Start of gdbus tests 839s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/home 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/cache 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/system-config1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/system-config2 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/config 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/system-data1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/system-data2 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/data 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/state 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/.dirs/runtime 839s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-9AX452 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:false tcp:false 839s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-9AX452/dbus-sLehXFkV 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 16254 839s ok 1 /gdbus/server-auth 839s # Start of server-auth tests 839s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/home 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/cache 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/system-config1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/system-config2 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/config 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/system-data1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/system-data2 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/data 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/state 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/abstract/.dirs/runtime 839s # Testing GDBus server at unix:tmpdir=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-9HP552 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:true tcp:false 839s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-9HP552/dbus-eAPBvD4H 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 16254 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 839s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 16254 839s ok 2 /gdbus/server-auth/abstract 839s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/home 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/cache 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/system-config2 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/config 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/system-data2 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/data 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/state 839s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/tcp/.dirs/runtime 839s # Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:false sha1:false abstract:false tcp:true 839s # Connectable address: tcp:host=127.0.0.1,port=40605 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says GDBus client is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 4294967295, pid -1 839s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 839s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 839s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 839s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 839s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 839s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 840s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 840s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 840s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 840s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 840s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 840s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 840s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 840s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 840s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 840s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 840s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 840s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 840s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 840s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting "ANONYMOUS" authentication 840s # GLib-GIO-DEBUG: Accepting "DBUS_COOKIE_SHA1" authentication 840s # GLib-GIO-DEBUG: Accepting "EXTERNAL" authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 4294967295, pid -1 840s ok 3 /gdbus/server-auth/tcp 840s # slow test /gdbus/server-auth/tcp executed in 0.85 secs 840s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/home 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/cache 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/system-config1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/system-config2 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/config 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/system-data1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/system-data2 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/data 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/state 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/.dirs/runtime 840s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-NP6052 / libdbus client, with flags: external:false anonymous:true sha1:false abstract:false tcp:false 840s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-NP6052/dbus-S5Eoh4as 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 16254 840s ok 4 /gdbus/server-auth/anonymous 840s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/home 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/cache 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/system-config1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/system-config2 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/config 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/system-data1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/system-data2 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/data 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/state 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/.dirs/runtime 840s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-5IMW52 / libdbus client, with flags: external:true anonymous:false sha1:false abstract:false tcp:false 840s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-5IMW52/dbus-7oUgHiUT 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 840s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 16254 840s ok 5 /gdbus/server-auth/external 840s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/home 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/cache 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/system-config1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/system-config2 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/config 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/system-data1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/system-data2 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/data 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/state 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/.dirs/runtime 840s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-CJRW52 / libdbus client, with flags: external:false anonymous:false sha1:true abstract:false tcp:false 840s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-CJRW52/dbus-WFvqf2y4 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 16254 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 840s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 16254 840s ok 6 /gdbus/server-auth/sha1 840s # Start of anonymous tests 840s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/home 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/cache 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/system-config2 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/config 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/system-data2 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/data 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/state 840s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/anonymous/tcp/.dirs/runtime 840s # Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:true sha1:false abstract:false tcp:true 840s # Connectable address: tcp:host=127.0.0.1,port=41381 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says GDBus client is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 4294967295, pid -1 840s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 840s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 840s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 840s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 840s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Accepting ANONYMOUS authentication 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not ANONYMOUS 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 4294967295, pid -1 841s ok 7 /gdbus/server-auth/anonymous/tcp 841s # slow test /gdbus/server-auth/anonymous/tcp executed in 0.84 secs 841s # End of anonymous tests 841s # Start of external tests 841s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/home 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/cache 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/system-config1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/system-config2 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/config 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/system-data1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/system-data2 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/data 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/state 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/external/require-same-user/.dirs/runtime 841s # Testing GDBus server at unix:dir=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-U01Y52 / libdbus client, with flags: external:true anonymous:false sha1:false abstract:false tcp:false 841s # Connectable address: unix:path=/tmp/test_gdbus-server-auth_03W452/gdbus-server-auth-U01Y52/dbus-98D0vCY3 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says GDBus client is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 1000, pid 16254 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Rejecting "DBUS_COOKIE_SHA1" authentication: not EXTERNAL 841s # GLib-GIO-DEBUG: Accepting EXTERNAL authentication 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=16254,uid=1000,gid=1000 841s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 1000, pid 16254 841s ok 8 /gdbus/server-auth/external/require-same-user 841s # End of external tests 841s # Start of sha1 tests 841s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/home 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/cache 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/system-config1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/system-config2 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/config 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/system-data1:/tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/system-data2 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/data 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/state 841s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-server-auth_03W452/gdbus/server-auth/sha1/tcp/.dirs/runtime 841s # Testing GDBus server at tcp:host=127.0.0.1 / libdbus client, with flags: external:false anonymous:false sha1:true abstract:false tcp:true 841s # Connectable address: tcp:host=127.0.0.1,port=37781 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says GDBus client is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 0 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 1 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 2 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 3 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 4 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 5 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 6 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 7 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 8 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 9 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 10 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 11 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 12 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 13 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 14 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 15 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: Server says libdbus client 16 is uid 4294967295, pid -1 841s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 841s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 841s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 841s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 841s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 842s # GLib-GIO-DEBUG: Server says libdbus client 17 is uid 4294967295, pid -1 842s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 842s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 842s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 842s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 842s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 842s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 842s # GLib-GIO-DEBUG: Server says libdbus client 18 is uid 4294967295, pid -1 842s # GLib-DEBUG: setenv()/putenv() are not thread-safe and should not be used after threads are created 842s # GLib-GIO-DEBUG: Rejecting "ANONYMOUS" authentication: not DBUS_COOKIE_SHA1 842s # GLib-GIO-DEBUG: Accepting DBUS_COOKIE_SHA1 authentication 842s # GLib-GIO-DEBUG: Rejecting "EXTERNAL" authentication: not DBUS_COOKIE_SHA1 842s # GLib-GIO-DEBUG: Authorizing peer with credentials: GCredentials:linux-ucred:pid=0 842s # GLib-GIO-DEBUG: New connection from peer with credentials: GCredentials:linux-ucred:pid=0 842s # GLib-GIO-DEBUG: Server says libdbus client 19 is uid 4294967295, pid -1 842s ok 9 /gdbus/server-auth/sha1/tcp 842s # slow test /gdbus/server-auth/sha1/tcp executed in 0.85 secs 842s # End of sha1 tests 842s # End of server-auth tests 842s # End of gdbus tests 842s PASS: glib/gdbus-server-auth.test 842s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.1s; system=0.1s; maxrss=7896 842s autopkgtest [18:50:45]: test gdbus-server-auth: -----------------------] 842s gdbus-server-auth PASS 842s autopkgtest [18:50:45]: test gdbus-server-auth: - - - - - - - - - - results - - - - - - - - - - 843s autopkgtest [18:50:46]: test gdbus-threading: preparing testbed 843s Reading package lists... 843s Building dependency tree... 843s Reading state information... 843s Starting pkgProblemResolver with broken count: 0 843s Starting 2 pkgProblemResolver with broken count: 0 843s Done 844s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 844s autopkgtest [18:50:47]: test gdbus-threading: [----------------------- 845s Running test: glib/gdbus-threading.test 845s TAP version 14 845s # random seed: R02S0ba525b90a1058efa1f74d8d8b6a4d55 845s 1..3 845s # Start of gdbus tests 845s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/home 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/cache 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/system-config1:/tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/system-config2 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/config 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/system-data1:/tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/system-data2 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/data 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/state 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-threading_MCTQ52/gdbus/delivery-in-thread/.dirs/runtime 845s ok 1 /gdbus/delivery-in-thread 845s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/home 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/cache 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/system-config1:/tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/system-config2 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/config 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/system-data1:/tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/system-data2 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/data 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/state 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-threading_MCTQ52/gdbus/method-calls-in-thread/.dirs/runtime 845s ok 2 /gdbus/method-calls-in-thread 845s # slow test /gdbus/method-calls-in-thread executed in 0.83 secs 845s # GLib-DEBUG: g_set_user_dirs: Setting HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/home 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CACHE_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/cache 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_DIRS to /tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/system-config1:/tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/system-config2 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_CONFIG_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/config 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_DIRS to /tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/system-data1:/tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/system-data2 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_DATA_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/data 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_STATE_HOME to /tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/state 845s # GLib-DEBUG: g_set_user_dirs: Setting XDG_RUNTIME_DIR to /tmp/test_gdbus-threading_MCTQ52/gdbus/threaded-singleton/.dirs/runtime 845s # GLib-GIO-DEBUG: refcount of 0xb01fbd0f07b0 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 845s # GLib-GIO-DEBUG: refcount of 0xb01fbd0f07b0 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 846s # GLib-GIO-DEBUG: refcount of 0xee06740063d0 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 846s # GLib-GIO-DEBUG: refcount of 0xee0674006910 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 846s # GLib-GIO-DEBUG: refcount of 0xee0674006d60 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 846s # GLib-GIO-DEBUG: refcount of 0xee0674004aa0 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 846s # GLib-GIO-DEBUG: refcount of 0xee06740069c0 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 846s # GLib-GIO-DEBUG: refcount of 0xee0674008060 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 846s # GLib-GIO-DEBUG: refcount of 0xee0674007580 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 846s # GLib-GIO-DEBUG: refcount of 0xee0674007220 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 846s # GLib-GIO-DEBUG: refcount of 0xee0674004630 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 847s # GLib-GIO-DEBUG: refcount of 0xee0674002990 is not right (3 rather than 1) in test_threaded_singleton(), sleeping 847s ok 3 /gdbus/threaded-singleton 847s # slow test /gdbus/threaded-singleton executed in 1.16 secs 847s # End of gdbus tests 847s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 847s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 847s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 847s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 847s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 847s PASS: glib/gdbus-threading.test 847s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.3s; system=0.2s; maxrss=5880 847s autopkgtest [18:50:50]: test gdbus-threading: -----------------------] 847s gdbus-threading PASS 847s autopkgtest [18:50:50]: test gdbus-threading: - - - - - - - - - - results - - - - - - - - - - 848s autopkgtest [18:50:51]: test gmenumodel: preparing testbed 848s Reading package lists... 848s Building dependency tree... 848s Reading state information... 848s Starting pkgProblemResolver with broken count: 0 848s Starting 2 pkgProblemResolver with broken count: 0 848s Done 849s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 850s autopkgtest [18:50:53]: test gmenumodel: [----------------------- 850s Running test: glib/gmenumodel.test 850s TAP version 14 850s # random seed: R02S4291d5320860c214a9e1fc26a2832d12 850s 1..15 850s # Start of gmenu tests 850s ok 1 /gmenu/equality 850s # slow test /gmenu/equality executed in 0.54 secs 851s ok 2 /gmenu/random 851s # slow test /gmenu/random executed in 0.62 secs 851s ok 3 /gmenu/attributes 851s ok 4 /gmenu/links 851s ok 5 /gmenu/mutable 851s ok 6 /gmenu/convenience 851s ok 7 /gmenu/menuitem 851s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/861 851s ok 8 /gmenu/input-validation 851s # Start of dbus tests 852s ok 9 /gmenu/dbus/roundtrip 852s # slow test /gmenu/dbus/roundtrip executed in 1.01 secs 852s ok 10 /gmenu/dbus/subscriptions 853s ok 11 /gmenu/dbus/threaded 853s # slow test /gmenu/dbus/threaded executed in 0.74 secs 853s # Start of peer tests 854s ok 12 /gmenu/dbus/peer/roundtrip 854s # slow test /gmenu/dbus/peer/roundtrip executed in 1.01 secs 855s ok 13 /gmenu/dbus/peer/subscriptions 855s # End of peer tests 855s # Start of export tests 855s # /gmenu/dbus/export/error-handling summary: Test that error handling of menu model export failure works 855s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/3366 855s ok 14 /gmenu/dbus/export/error-handling 855s # End of export tests 855s # End of dbus tests 855s # Start of attributes tests 855s ok 15 /gmenu/attributes/iterate 855s # End of attributes tests 855s # End of gmenu tests 855s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 855s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 855s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 855s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 855s # GLib-DEBUG: unsetenv() is not thread-safe and should not be used after threads are created 855s PASS: glib/gmenumodel.test 855s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=2.6s; system=0.2s; maxrss=21400 855s autopkgtest [18:50:58]: test gmenumodel: -----------------------] 855s gmenumodel PASS 855s autopkgtest [18:50:58]: test gmenumodel: - - - - - - - - - - results - - - - - - - - - - 855s autopkgtest [18:50:58]: test mainloop: preparing testbed 856s Reading package lists... 856s Building dependency tree... 856s Reading state information... 856s Starting pkgProblemResolver with broken count: 0 856s Starting 2 pkgProblemResolver with broken count: 0 856s Done 857s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 858s autopkgtest [18:51:01]: test mainloop: [----------------------- 858s Running test: glib/mainloop.test 858s TAP version 14 858s # random seed: R02S6e682d2412ee14e23d93cf9cf7855599 858s 1..45 858s # Start of maincontext tests 858s ok 1 /maincontext/basic 858s # Add same-priority sources: 15 858s # Find each source: 2 858s # Remove in random order: 26 858s ok 2 /maincontext/nsources_same_priority 858s # Add different-priority sources: 17 858s # Find each source: 2 858s # Remove in random order: 32 858s ok 3 /maincontext/nsources_different_priority 858s # Add sources from threads: 241 858s # Remove sources from threads: 42 858s ok 4 /maincontext/nsources_threadpool 858s ok 5 /maincontext/source_finalization 858s # /maincontext/idle-once summary: Test g_idle_add_once() works 858s ok 6 /maincontext/idle-once 858s # /maincontext/timeout-once summary: Test g_timeout_add_once() works 858s ok 7 /maincontext/timeout-once 858s # Start of source_finalization_from_source tests 858s # /maincontext/source_finalization_from_source/0 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 8 /maincontext/source_finalization_from_source/0 858s # /maincontext/source_finalization_from_source/1 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 9 /maincontext/source_finalization_from_source/1 858s # /maincontext/source_finalization_from_source/2 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 10 /maincontext/source_finalization_from_source/2 858s # /maincontext/source_finalization_from_source/3 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 11 /maincontext/source_finalization_from_source/3 858s # /maincontext/source_finalization_from_source/4 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 12 /maincontext/source_finalization_from_source/4 858s # /maincontext/source_finalization_from_source/5 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 13 /maincontext/source_finalization_from_source/5 858s # /maincontext/source_finalization_from_source/6 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 14 /maincontext/source_finalization_from_source/6 858s # /maincontext/source_finalization_from_source/7 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 15 /maincontext/source_finalization_from_source/7 858s # /maincontext/source_finalization_from_source/8 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 16 /maincontext/source_finalization_from_source/8 858s # /maincontext/source_finalization_from_source/9 summary: Tests if freeing a GSource as part of another GSource during main context destruction works. 858s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/merge_requests/1353 858s ok 17 /maincontext/source_finalization_from_source/9 858s # End of source_finalization_from_source tests 858s # Start of source_finalization_from_dispatch tests 858s # /maincontext/source_finalization_from_dispatch/0 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 858s ok 18 /maincontext/source_finalization_from_dispatch/0 858s # /maincontext/source_finalization_from_dispatch/1 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 858s ok 19 /maincontext/source_finalization_from_dispatch/1 858s # /maincontext/source_finalization_from_dispatch/2 summary: Tests if freeing a GSource as part of another GSource during main context iteration works. 858s ok 20 /maincontext/source_finalization_from_dispatch/2 858s # End of source_finalization_from_dispatch tests 858s # End of maincontext tests 858s # Start of mainloop tests 858s ok 21 /mainloop/basic 858s ok 22 /mainloop/timeouts # SKIP Not running timing heavy test 858s ok 23 /mainloop/priorities 859s ok 24 /mainloop/invoke 859s # slow test /mainloop/invoke executed in 0.50 secs 860s ok 25 /mainloop/child_sources 860s # slow test /mainloop/child_sources executed in 1.21 secs 862s ok 26 /mainloop/recursive_child_sources 862s # slow test /mainloop/recursive_child_sources executed in 2.20 secs 862s ok 27 /mainloop/recursive_loop_child_sources 862s ok 28 /mainloop/swapping_child_sources 862s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=701283 862s ok 29 /mainloop/blocked_child_sources 863s Executing: glib/mainloop.test 863s ok 30 /mainloop/source_time 863s # slow test /mainloop/source_time executed in 1.00 secs 863s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=687098 863s ok 31 /mainloop/overflow 864s ok 32 /mainloop/ready-time 864s # slow test /mainloop/ready-time executed in 0.50 secs 864s ok 33 /mainloop/wakeup 864s ok 34 /mainloop/remove-invalid 864s ok 35 /mainloop/unref-while-pending 864s ok 36 /mainloop/unix-fd 864s # slow test /mainloop/unix-fd executed in 0.58 secs 864s ok 37 /mainloop/unix-fd-source 864s ok 38 /mainloop/source-unix-fd-api 864s ok 39 /mainloop/wait 864s ok 40 /mainloop/unix-file-poll 864s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1592 864s ok 41 /mainloop/unix-fd-priority 864s ok 42 /mainloop/nfds 864s ok 43 /mainloop/steal-fd 864s # Start of ownerless-polling tests 864s ok 44 /mainloop/ownerless-polling/attach-first 864s ok 45 /mainloop/ownerless-polling/pop-first 864s # End of ownerless-polling tests 864s # End of mainloop tests 864s PASS: glib/mainloop.test 864s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.5s; system=0.8s; maxrss=15752 865s autopkgtest [18:51:08]: test mainloop: -----------------------] 865s autopkgtest [18:51:08]: test mainloop: - - - - - - - - - - results - - - - - - - - - - 865s mainloop PASS 865s autopkgtest [18:51:08]: test memory-monitor-dbus: preparing testbed 866s Reading package lists... 866s Building dependency tree... 866s Reading state information... 866s Starting pkgProblemResolver with broken count: 0 866s Starting 2 pkgProblemResolver with broken count: 0 866s Done 867s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 867s autopkgtest [18:51:10]: test memory-monitor-dbus: [----------------------- 868s Running test: glib/memory-monitor-dbus.test 868s TAP version 13 868s ok 1 __main__.TestLowMemoryMonitor.test_low_memory_warning_signal 868s # Received memory warning signal, level 868s # Received memory warning signal, level 868s # Received memory warning signal, level 868s 1..1 868s PASS: glib/memory-monitor-dbus.test 868s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.2s; system=0.0s; maxrss=29300 868s autopkgtest [18:51:11]: test memory-monitor-dbus: -----------------------] 869s memory-monitor-dbus PASS 869s autopkgtest [18:51:12]: test memory-monitor-dbus: - - - - - - - - - - results - - - - - - - - - - 869s autopkgtest [18:51:12]: test socket: preparing testbed 869s Reading package lists... 869s Building dependency tree... 869s Reading state information... 869s Starting pkgProblemResolver with broken count: 0 870s Starting 2 pkgProblemResolver with broken count: 0 870s Done 870s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 871s autopkgtest [18:51:14]: test socket: [----------------------- 871s Running test: glib/socket.test 871s TAP version 14 871s # random seed: R02Sc7fa9215b3e892910ac5ad099e3d7513 871s 1..28 871s # Start of socket tests 872s ok 1 /socket/ipv4_sync 872s # slow test /socket/ipv4_sync executed in 1.00 secs 873s ok 2 /socket/ipv4_async 873s # slow test /socket/ipv4_async executed in 1.00 secs 873s ok 3 /socket/ipv6_sync 873s ok 4 /socket/ipv6_async 873s ok 5 /socket/ipv6_v4mapped 874s ok 6 /socket/close_graceful 874s # slow test /socket/close_graceful executed in 1.00 secs 874s ok 7 /socket/timed_wait # SKIP Not running timing heavy test 874s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=741707 874s ok 8 /socket/fd_reuse 874s ok 9 /socket/address 874s ok 10 /socket/unix-from-fd 874s ok 11 /socket/unix-connection 874s ok 12 /socket/unix-connection-ancillary-data 874s ok 13 /socket/source-postmortem 874s ok 14 /socket/read_write 874s ok 15 /socket/read_writev 874s # /socket/receive_bytes summary: Test basic functionality of g_socket_receive_bytes() 874s ok 16 /socket/receive_bytes 874s # /socket/receive_bytes_from summary: Test basic functionality of g_socket_receive_bytes_from() 874s ok 17 /socket/receive_bytes_from 874s # Start of ipv4_sync tests 874s ok 18 /socket/ipv4_sync/datagram 874s # Start of datagram tests 875s ok 19 /socket/ipv4_sync/datagram/timeouts 875s # slow test /socket/ipv4_sync/datagram/timeouts executed in 1.10 secs 875s # End of datagram tests 875s # End of ipv4_sync tests 875s # Start of ipv6_sync tests 875s ok 20 /socket/ipv6_sync/datagram 875s # Start of datagram tests 876s Executing: glib/socket.test 876s ok 21 /socket/ipv6_sync/datagram/timeouts 876s # slow test /socket/ipv6_sync/datagram/timeouts executed in 1.10 secs 876s # End of datagram tests 876s # End of ipv6_sync tests 876s # Start of reuse tests 876s ok 22 /socket/reuse/tcp 876s ok 23 /socket/reuse/udp 876s # End of reuse tests 876s # Start of get_available tests 876s ok 24 /socket/get_available/datagram 876s ok 25 /socket/get_available/stream 876s # End of get_available tests 876s # Start of credentials tests 876s # Supported on this OS: GCredentials:linux-ucred:pid=0 876s ok 26 /socket/credentials/tcp_client 876s # Supported on this OS: GCredentials:linux-ucred:pid=0 876s ok 27 /socket/credentials/tcp_server 876s # Supported on this OS: GCredentials:linux-ucred:pid=18119,uid=1000,gid=1000 876s ok 28 /socket/credentials/unix_socketpair 876s # End of credentials tests 876s # End of socket tests 876s PASS: glib/socket.test 876s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=5480 876s autopkgtest [18:51:19]: test socket: -----------------------] 877s socket PASS 877s autopkgtest [18:51:20]: test socket: - - - - - - - - - - results - - - - - - - - - - 877s autopkgtest [18:51:20]: test testfilemonitor: preparing testbed 877s Reading package lists... 878s Building dependency tree... 878s Reading state information... 878s Starting pkgProblemResolver with broken count: 0 878s Starting 2 pkgProblemResolver with broken count: 0 878s Done 878s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 879s autopkgtest [18:51:22]: test testfilemonitor: [----------------------- 879s Running test: glib/testfilemonitor.test 879s TAP version 14 879s # random seed: R02S0b27d240cd409fe99fc77b3e1ed82b20 879s 1..8 879s # Start of monitor tests 879s # GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs? 879s # Using temporary directory: /tmp/gio-test-testfilemonitor_EBD452 879s # Using GFileMonitor GInotifyFileMonitor 881s ok 1 /monitor/atomic-replace 881s # slow test /monitor/atomic-replace executed in 2.00 secs 881s # Using temporary directory: /tmp/gio-test-testfilemonitor_R79352 881s # Using GFileMonitor GInotifyFileMonitor 884s ok 2 /monitor/file-changes 884s # slow test /monitor/file-changes executed in 2.50 secs 884s # Using temporary directory: /tmp/gio-test-testfilemonitor_YV2R52 884s # Using GFileMonitor GInotifyFileMonitor 885s Executing: glib/testfilemonitor.test 887s ok 3 /monitor/dir-monitor 887s # slow test /monitor/dir-monitor executed in 3.50 secs 887s # Using temporary directory: /tmp/gio-test-testfilemonitor_HRG452 887s # Using GFileMonitor GInotifyFileMonitor 890s Executing: glib/testfilemonitor.test 895s Executing: glib/testfilemonitor.test 900s Executing: glib/testfilemonitor.test 905s Executing: glib/testfilemonitor.test 910s Executing: glib/testfilemonitor.test 912s ok 4 /monitor/dir-not-existent 912s # slow test /monitor/dir-not-existent executed in 25.02 secs 912s # Using temporary directory: /tmp/gio-test-testfilemonitor_SAOA62 912s # Using GFileMonitor 0 GInotifyFileMonitor 912s # Using GFileMonitor 1 GInotifyFileMonitor 914s ok 5 /monitor/cross-dir-moves 914s # slow test /monitor/cross-dir-moves executed in 2.00 secs 914s # Using temporary directory: /tmp/gio-test-testfilemonitor_1GMA62 914s # /monitor/finalize-in-callback summary: Test that finalization of a GFileMonitor in one of its callbacks doesn?t cause a deadlock. 914s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/1941 914s ok 6 /monitor/finalize-in-callback 914s # Using temporary directory: /tmp/gio-test-testfilemonitor_8YVA62 914s # /monitor/root summary: Test that GFileMonitor can monitor the root directory. 914s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3241 914s ok 7 /monitor/root 914s # Start of file tests 914s # Using temporary directory: /tmp/gio-test-testfilemonitor_9OTA62 914s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=755721 914s # Running with hard link tests 914s # Using GFileMonitor GInotifyFileMonitor 915s Executing: glib/testfilemonitor.test 918s # Event 0 at expected index 7 skipped because it is marked as optional 918s # Event 2 at expected index 11 skipped because it is marked as optional 918s ok 8 /monitor/file/hard-links 918s # slow test /monitor/file/hard-links executed in 3.50 secs 918s # End of file tests 918s # End of monitor tests 918s PASS: glib/testfilemonitor.test 918s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=5504 918s autopkgtest [18:52:01]: test testfilemonitor: -----------------------] 918s autopkgtest [18:52:01]: test testfilemonitor: - - - - - - - - - - results - - - - - - - - - - 918s testfilemonitor PASS 919s autopkgtest [18:52:02]: test thread-pool-slow: preparing testbed 919s Reading package lists... 919s Building dependency tree... 919s Reading state information... 919s Starting pkgProblemResolver with broken count: 0 919s Starting 2 pkgProblemResolver with broken count: 0 919s Done 920s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 920s autopkgtest [18:52:03]: test thread-pool-slow: [----------------------- 921s Running test: glib/thread-pool-slow.test 921s TAP version 14 921s # random seed: R02Se66ac56a65dec5408918c269be2b43ce 921s 1..7 921s # Start of threadpool tests 921s ok 1 /threadpool/functions 921s ok 2 /threadpool/stop-unused 921s # slow test /threadpool/stop-unused executed in 0.51 secs 921s ok 3 /threadpool/pools 921s # [unsorted] ===> pushed new thread with id:13, number of threads:1, unprocessed:1 921s # [unsorted] ===> pushed new thread with id:86, number of threads:2, unprocessed:2 921s # [unsorted] ===> pushed new thread with id:42, number of threads:3, unprocessed:3 921s # [unsorted] ===> pushed new thread with id:83, number of threads:4, unprocessed:4 921s # [unsorted] ===> pushed new thread with id:37, number of threads:5, unprocessed:5 921s # [unsorted] ===> pushed new thread with id:95, number of threads:6, unprocessed:6 921s # [unsorted] ===> pushed new thread with id:67, number of threads:7, unprocessed:7 921s # [unsorted] ===> pushed new thread with id:80, number of threads:8, unprocessed:8 921s # [unsorted] ===> pushed new thread with id:94, number of threads:9, unprocessed:9 921s # [unsorted] ===> pushed new thread with id:75, number of threads:10, unprocessed:10 921s # [unsorted] ===> pushed new thread with id:37, number of threads:10, unprocessed:1 921s # [unsorted] ===> pushed new thread with id:63, number of threads:10, unprocessed:2 921s # [unsorted] ===> pushed new thread with id:81, number of threads:10, unprocessed:3 921s # [unsorted] ===> pushed new thread with id:58, number of threads:10, unprocessed:4 921s # [unsorted] ===> pushed new thread with id:86, number of threads:10, unprocessed:5 921s # [unsorted] ===> pushed new thread with id:43, number of threads:10, unprocessed:6 921s # [unsorted] ===> pushed new thread with id:35, number of threads:10, unprocessed:7 921s # [unsorted] ===> pushed new thread with id:35, number of threads:10, unprocessed:8 921s # [unsorted] ===> pushed new thread with id:52, number of threads:10, unprocessed:9 921s # [unsorted] ===> pushed new thread with id:39, number of threads:10, unprocessed:10 921s # [unsorted] ===> pushed new thread with id:30, number of threads:10, unprocessed:11 921s # [unsorted] ===> pushed new thread with id:44, number of threads:10, unprocessed:12 921s # [unsorted] ===> pushed new thread with id:20, number of threads:10, unprocessed:13 921s # [unsorted] ===> pushed new thread with id:72, number of threads:10, unprocessed:14 921s # [unsorted] ===> pushed new thread with id:24, number of threads:10, unprocessed:15 921s # [unsorted] ===> pushed new thread with id:21, number of threads:10, unprocessed:16 921s # [unsorted] ===> pushed new thread with id:54, number of threads:10, unprocessed:17 921s # [unsorted] ===> pushed new thread with id:85, number of threads:10, unprocessed:18 921s # [unsorted] ===> pushed new thread with id:100, number of threads:10, unprocessed:19 921s # [unsorted] ===> pushed new thread with id:28, number of threads:10, unprocessed:20 921s # [unsorted] ===> pushed new thread with id:43, number of threads:10, unprocessed:21 921s # [unsorted] ===> pushed new thread with id:75, number of threads:10, unprocessed:22 921s # [unsorted] ===> pushed new thread with id:64, number of threads:10, unprocessed:23 921s # [unsorted] ===> pushed new thread with id:87, number of threads:10, unprocessed:24 921s # [unsorted] ===> pushed new thread with id:33, number of threads:10, unprocessed:25 921s # [unsorted] ===> pushed new thread with id:43, number of threads:10, unprocessed:26 921s # [unsorted] ===> pushed new thread with id:97, number of threads:10, unprocessed:27 921s # [unsorted] ===> pushed new thread with id:35, number of threads:10, unprocessed:28 921s # [unsorted] ===> pushed new thread with id:52, number of threads:10, unprocessed:29 921s # [unsorted] ===> pushed new thread with id:59, number of threads:10, unprocessed:30 921s # [unsorted] ===> pushed new thread with id:22, number of threads:10, unprocessed:31 921s # [unsorted] ===> pushed new thread with id:88, number of threads:10, unprocessed:32 921s # [unsorted] ===> pushed new thread with id:83, number of threads:10, unprocessed:33 921s # [unsorted] ===> pushed new thread with id:65, number of threads:10, unprocessed:34 921s # [unsorted] ===> pushed new thread with id:48, number of threads:10, unprocessed:35 921s # [unsorted] ===> pushed new thread with id:21, number of threads:10, unprocessed:36 921s # [unsorted] ===> pushed new thread with id:11, number of threads:10, unprocessed:37 921s # [unsorted] ===> pushed new thread with id:28, number of threads:10, unprocessed:38 921s # [unsorted] ===> pushed new thread with id:56, number of threads:10, unprocessed:39 921s # [unsorted] ===> pushed new thread with id:10, number of threads:10, unprocessed:40 921s # [unsorted] ===> pushed new thread with id:18, number of threads:10, unprocessed:41 921s # [unsorted] ===> pushed new thread with id:10, number of threads:10, unprocessed:42 921s # [unsorted] ===> pushed new thread with id:13, number of threads:10, unprocessed:43 921s # [unsorted] ===> pushed new thread with id:97, number of threads:10, unprocessed:44 921s # [unsorted] ===> pushed new thread with id:16, number of threads:10, unprocessed:45 921s # [unsorted] ===> pushed new thread with id:2, number of threads:10, unprocessed:46 921s # [unsorted] ===> pushed new thread with id:64, number of threads:10, unprocessed:47 921s # [unsorted] ===> pushed new thread with id:91, number of threads:10, unprocessed:48 921s # [unsorted] ===> pushed new thread with id:31, number of threads:10, unprocessed:49 921s # [unsorted] ===> pushed new thread with id:66, number of threads:10, unprocessed:50 921s # [unsorted] ===> pushed new thread with id:83, number of threads:10, unprocessed:51 921s # [unsorted] ===> pushed new thread with id:98, number of threads:10, unprocessed:52 921s # [unsorted] ===> pushed new thread with id:91, number of threads:10, unprocessed:53 921s # [unsorted] ===> pushed new thread with id:82, number of threads:10, unprocessed:54 921s # [unsorted] ===> pushed new thread with id:84, number of threads:10, unprocessed:55 921s # [unsorted] ===> pushed new thread with id:50, number of threads:10, unprocessed:56 921s # [unsorted] ===> pushed new thread with id:25, number of threads:10, unprocessed:57 921s # [unsorted] ===> pushed new thread with id:93, number of threads:10, unprocessed:58 921s # [unsorted] ===> pushed new thread with id:7, number of threads:10, unprocessed:59 921s # [unsorted] ===> pushed new thread with id:35, number of threads:10, unprocessed:60 921s # [unsorted] ===> pushed new thread with id:19, number of threads:10, unprocessed:61 921s # [unsorted] ===> pushed new thread with id:25, number of threads:10, unprocessed:62 921s # [unsorted] ===> pushed new thread with id:5, number of threads:10, unprocessed:63 921s # [unsorted] ===> pushed new thread with id:28, number of threads:10, unprocessed:64 921s # [unsorted] ===> pushed new thread with id:9, number of threads:10, unprocessed:65 921s # [unsorted] ===> pushed new thread with id:82, number of threads:10, unprocessed:66 921s # [unsorted] ===> pushed new thread with id:77, number of threads:10, unprocessed:67 921s # [unsorted] ===> pushed new thread with id:63, number of threads:10, unprocessed:68 921s # [unsorted] ===> pushed new thread with id:2, number of threads:10, unprocessed:69 921s # [unsorted] ===> pushed new thread with id:27, number of threads:10, unprocessed:70 921s # [unsorted] ===> pushed new thread with id:48, number of threads:10, unprocessed:71 921s # [unsorted] ===> pushed new thread with id:33, number of threads:10, unprocessed:72 921s # [unsorted] ===> pushed new thread with id:31, number of threads:10, unprocessed:73 921s # [unsorted] ===> pushed new thread with id:54, number of threads:10, unprocessed:74 921s # [unsorted] ===> pushed new thread with id:6, number of threads:10, unprocessed:75 921s # [unsorted] ===> pushed new thread with id:11, number of threads:10, unprocessed:76 921s # [unsorted] ===> pushed new thread with id:62, number of threads:10, unprocessed:77 921s # [unsorted] ===> pushed new thread with id:85, number of threads:10, unprocessed:78 921s # [unsorted] ===> pushed new thread with id:16, number of threads:10, unprocessed:79 921s # [unsorted] ===> pushed new thread with id:46, number of threads:10, unprocessed:80 921s # [unsorted] ===> pushed new thread with id:59, number of threads:10, unprocessed:81 921s # [unsorted] ===> pushed new thread with id:45, number of threads:10, unprocessed:82 921s # [unsorted] ===> pushed new thread with id:8, number of threads:10, unprocessed:83 921s # [unsorted] ===> pushed new thread with id:29, number of threads:10, unprocessed:84 921s # [unsorted] ===> pushed new thread with id:18, number of threads:10, unprocessed:85 921s # [unsorted] ===> pushed new thread with id:56, number of threads:10, unprocessed:86 921s # [unsorted] ===> pushed new thread with id:40, number of threads:10, unprocessed:87 921s # [unsorted] ===> pushed new thread with id:24, number of threads:10, unprocessed:88 921s # [unsorted] ===> pushed new thread with id:59, number of threads:10, unprocessed:89 921s # [unsorted] ===> pushed new thread with id:73, number of threads:10, unprocessed:90 921s ok 4 /threadpool/no-sort 921s # [ sorted] ===> pushed new thread with id:80, number of threads:0, unprocessed:1 921s # [ sorted] ===> pushed new thread with id:51, number of threads:0, unprocessed:2 921s # [ sorted] ===> pushed new thread with id:24, number of threads:0, unprocessed:3 921s # [ sorted] ===> pushed new thread with id:57, number of threads:0, unprocessed:4 921s # [ sorted] ===> pushed new thread with id:42, number of threads:0, unprocessed:5 921s # [ sorted] ===> pushed new thread with id:52, number of threads:0, unprocessed:6 921s # [ sorted] ===> pushed new thread with id:55, number of threads:0, unprocessed:7 921s # [ sorted] ===> pushed new thread with id:32, number of threads:0, unprocessed:8 921s # [ sorted] ===> pushed new thread with id:39, number of threads:0, unprocessed:9 921s # [ sorted] ===> pushed new thread with id:90, number of threads:0, unprocessed:10 921s # [ sorted] ===> pushed new thread with id:26, number of threads:0, unprocessed:11 921s # [ sorted] ===> pushed new thread with id:70, number of threads:0, unprocessed:12 921s # [ sorted] ===> pushed new thread with id:18, number of threads:0, unprocessed:13 921s # [ sorted] ===> pushed new thread with id:32, number of threads:0, unprocessed:14 921s # [ sorted] ===> pushed new thread with id:15, number of threads:0, unprocessed:15 921s # [ sorted] ===> pushed new thread with id:96, number of threads:0, unprocessed:16 921s # [ sorted] ===> pushed new thread with id:46, number of threads:0, unprocessed:17 921s # [ sorted] ===> pushed new thread with id:83, number of threads:0, unprocessed:18 921s # [ sorted] ===> pushed new thread with id:19, number of threads:0, unprocessed:19 921s # [ sorted] ===> pushed new thread with id:89, number of threads:0, unprocessed:20 921s # [ sorted] ===> pushed new thread with id:92, number of threads:0, unprocessed:21 921s # [ sorted] ===> pushed new thread with id:89, number of threads:0, unprocessed:22 921s # [ sorted] ===> pushed new thread with id:5, number of threads:0, unprocessed:23 921s # [ sorted] ===> pushed new thread with id:35, number of threads:0, unprocessed:24 921s # [ sorted] ===> pushed new thread with id:79, number of threads:0, unprocessed:25 921s # [ sorted] ===> pushed new thread with id:24, number of threads:0, unprocessed:26 921s # [ sorted] ===> pushed new thread with id:17, number of threads:0, unprocessed:27 921s # [ sorted] ===> pushed new thread with id:44, number of threads:0, unprocessed:28 921s # [ sorted] ===> pushed new thread with id:87, number of threads:0, unprocessed:29 921s # [ sorted] ===> pushed new thread with id:89, number of threads:0, unprocessed:30 921s # [ sorted] ===> pushed new thread with id:29, number of threads:0, unprocessed:31 921s # [ sorted] ===> pushed new thread with id:58, number of threads:0, unprocessed:32 921s # [ sorted] ===> pushed new thread with id:65, number of threads:0, unprocessed:33 921s # [ sorted] ===> pushed new thread with id:88, number of threads:0, unprocessed:34 921s # [ sorted] ===> pushed new thread with id:70, number of threads:0, unprocessed:35 921s # [ sorted] ===> pushed new thread with id:6, number of threads:0, unprocessed:36 921s # [ sorted] ===> pushed new thread with id:54, number of threads:0, unprocessed:37 921s # [ sorted] ===> pushed new thread with id:87, number of threads:0, unprocessed:38 921s # [ sorted] ===> pushed new thread with id:28, number of threads:0, unprocessed:39 921s # [ sorted] ===> pushed new thread with id:66, number of threads:0, unprocessed:40 921s # [ sorted] ===> pushed new thread with id:81, number of threads:0, unprocessed:41 921s # [ sorted] ===> pushed new thread with id:85, number of threads:0, unprocessed:42 921s # [ sorted] ===> pushed new thread with id:92, number of threads:0, unprocessed:43 921s # [ sorted] ===> pushed new thread with id:54, number of threads:0, unprocessed:44 921s # [ sorted] ===> pushed new thread with id:97, number of threads:0, unprocessed:45 921s # [ sorted] ===> pushed new thread with id:90, number of threads:0, unprocessed:46 921s # [ sorted] ===> pushed new thread with id:43, number of threads:0, unprocessed:47 921s # [ sorted] ===> pushed new thread with id:65, number of threads:0, unprocessed:48 921s # [ sorted] ===> pushed new thread with id:45, number of threads:0, unprocessed:49 921s # [ sorted] ===> pushed new thread with id:34, number of threads:0, unprocessed:50 921s # [ sorted] ===> pushed new thread with id:6, number of threads:0, unprocessed:51 921s # [ sorted] ===> pushed new thread with id:76, number of threads:0, unprocessed:52 921s # [ sorted] ===> pushed new thread with id:41, number of threads:0, unprocessed:53 921s # [ sorted] ===> pushed new thread with id:33, number of threads:0, unprocessed:54 921s # [ sorted] ===> pushed new thread with id:9, number of threads:0, unprocessed:55 921s # [ sorted] ===> pushed new thread with id:59, number of threads:0, unprocessed:56 921s # [ sorted] ===> pushed new thread with id:85, number of threads:0, unprocessed:57 921s # [ sorted] ===> pushed new thread with id:24, number of threads:0, unprocessed:58 921s # [ sorted] ===> pushed new thread with id:15, number of threads:0, unprocessed:59 921s # [ sorted] ===> pushed new thread with id:67, number of threads:0, unprocessed:60 921s # [ sorted] ===> pushed new thread with id:42, number of threads:0, unprocessed:61 921s # [ sorted] ===> pushed new thread with id:87, number of threads:0, unprocessed:62 921s # [ sorted] ===> pushed new thread with id:41, number of threads:0, unprocessed:63 921s # [ sorted] ===> pushed new thread with id:65, number of threads:0, unprocessed:64 921s # [ sorted] ===> pushed new thread with id:81, number of threads:0, unprocessed:65 921s # [ sorted] ===> pushed new thread with id:42, number of threads:0, unprocessed:66 921s # [ sorted] ===> pushed new thread with id:48, number of threads:0, unprocessed:67 921s # [ sorted] ===> pushed new thread with id:36, number of threads:0, unprocessed:68 921s # [ sorted] ===> pushed new thread with id:20, number of threads:0, unprocessed:69 921s # [ sorted] ===> pushed new thread with id:46, number of threads:0, unprocessed:70 921s # [ sorted] ===> pushed new thread with id:63, number of threads:0, unprocessed:71 921s # [ sorted] ===> pushed new thread with id:37, number of threads:0, unprocessed:72 921s # [ sorted] ===> pushed new thread with id:59, number of threads:0, unprocessed:73 921s # [ sorted] ===> pushed new thread with id:19, number of threads:0, unprocessed:74 921s # [ sorted] ===> pushed new thread with id:67, number of threads:0, unprocessed:75 921s # [ sorted] ===> pushed new thread with id:26, number of threads:0, unprocessed:76 921s # [ sorted] ===> pushed new thread with id:20, number of threads:0, unprocessed:77 921s # [ sorted] ===> pushed new thread with id:95, number of threads:0, unprocessed:78 921s # [ sorted] ===> pushed new thread with id:24, number of threads:0, unprocessed:79 921s # [ sorted] ===> pushed new thread with id:61, number of threads:0, unprocessed:80 921s # [ sorted] ===> pushed new thread with id:78, number of threads:0, unprocessed:81 921s # [ sorted] ===> pushed new thread with id:61, number of threads:0, unprocessed:82 921s # [ sorted] ===> pushed new thread with id:88, number of threads:0, unprocessed:83 921s # [ sorted] ===> pushed new thread with id:63, number of threads:0, unprocessed:84 921s # [ sorted] ===> pushed new thread with id:96, number of threads:0, unprocessed:85 921s # [ sorted] ===> pushed new thread with id:47, number of threads:0, unprocessed:86 921s # [ sorted] ===> pushed new thread with id:82, number of threads:0, unprocessed:87 921s # [ sorted] ===> pushed new thread with id:35, number of threads:0, unprocessed:88 921s # [ sorted] ===> pushed new thread with id:19, number of threads:0, unprocessed:89 921s # [ sorted] ===> pushed new thread with id:31, number of threads:0, unprocessed:90 921s # [ sorted] ===> pushed new thread with id:84, number of threads:0, unprocessed:91 921s # [ sorted] ===> pushed new thread with id:93, number of threads:0, unprocessed:92 921s # [ sorted] ===> pushed new thread with id:84, number of threads:0, unprocessed:93 921s # [ sorted] ===> pushed new thread with id:15, number of threads:0, unprocessed:94 921s # [ sorted] ===> pushed new thread with id:98, number of threads:0, unprocessed:95 921s # [ sorted] ===> pushed new thread with id:74, number of threads:0, unprocessed:96 921s # [ sorted] ===> pushed new thread with id:6, number of threads:0, unprocessed:97 921s # [ sorted] ===> pushed new thread with id:45, number of threads:0, unprocessed:98 921s # [ sorted] ===> pushed new thread with id:25, number of threads:0, unprocessed:99 921s # [ sorted] ===> pushed new thread with id:23, number of threads:0, unprocessed:100 921s # Starting thread pool processing 921s ok 5 /threadpool/sort 922s ok 6 /threadpool/stop-unused-multiple 922s # slow test /threadpool/stop-unused-multiple executed in 0.51 secs 922s # Pool idle thread count: 0, unprocessed jobs: 43 922s # Pool idle thread count: 0, unprocessed jobs: 0 922s # Pool idle thread count: 0, unprocessed jobs: 0 923s # Pool idle thread count: 10, unprocessed jobs: 0 923s # Pool idle thread count: 10, unprocessed jobs: 0 923s # Pool idle thread count: 10, unprocessed jobs: 0 923s # Pool idle thread count: 10, unprocessed jobs: 0 924s # Pool idle thread count: 10, unprocessed jobs: 0 924s # Pool idle thread count: 10, unprocessed jobs: 0 924s # Pool idle thread count: 10, unprocessed jobs: 0 924s # Pool idle thread count: 10, unprocessed jobs: 0 925s # Pool idle thread count: 10, unprocessed jobs: 0 925s # Pool idle thread count: 10, unprocessed jobs: 0 925s # Pool idle thread count: 10, unprocessed jobs: 0 925s # Pool idle thread count: 10, unprocessed jobs: 0 926s # Pool idle thread count: 10, unprocessed jobs: 0 926s # Pool idle thread count: 10, unprocessed jobs: 0 926s Executing: glib/thread-pool-slow.test 926s # Pool idle thread count: 10, unprocessed jobs: 0 926s # Pool idle thread count: 10, unprocessed jobs: 0 927s # Pool idle thread count: 10, unprocessed jobs: 0 927s # Pool idle thread count: 10, unprocessed jobs: 0 927s # Pool idle thread count: 10, unprocessed jobs: 0 927s # Pool idle thread count: 10, unprocessed jobs: 0 928s # Pool idle thread count: 10, unprocessed jobs: 0 928s # Pool idle thread count: 10, unprocessed jobs: 0 928s # Pool idle thread count: 10, unprocessed jobs: 0 928s # Pool idle thread count: 10, unprocessed jobs: 0 929s # Pool idle thread count: 10, unprocessed jobs: 0 929s # Pool idle thread count: 10, unprocessed jobs: 0 929s # Pool idle thread count: 10, unprocessed jobs: 0 929s # Pool idle thread count: 10, unprocessed jobs: 0 930s # Pool idle thread count: 10, unprocessed jobs: 0 930s # Pool idle thread count: 10, unprocessed jobs: 0 930s # Pool idle thread count: 10, unprocessed jobs: 0 930s # Pool idle thread count: 10, unprocessed jobs: 0 931s # Pool idle thread count: 10, unprocessed jobs: 2 931s # Pool idle thread count: 10, unprocessed jobs: 2 931s # Pool idle thread count: 8, unprocessed jobs: 0 931s # Pool idle thread count: 8, unprocessed jobs: 0 931s Executing: glib/thread-pool-slow.test 931s # Pool idle thread count: 10, unprocessed jobs: 0 931s # Pool idle thread count: 10, unprocessed jobs: 0 932s # Pool idle thread count: 10, unprocessed jobs: 0 932s # Pool idle thread count: 10, unprocessed jobs: 0 932s # Pool idle thread count: 10, unprocessed jobs: 0 932s # Pool idle thread count: 10, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 935s # Pool idle thread count: 2, unprocessed jobs: 0 936s # Pool idle thread count: 2, unprocessed jobs: 0 936s # Pool idle thread count: 2, unprocessed jobs: 0 936s Executing: glib/thread-pool-slow.test 936s # Pool idle thread count: 2, unprocessed jobs: 0 936s # Pool idle thread count: 2, unprocessed jobs: 0 937s # Pool idle thread count: 2, unprocessed jobs: 0 937s # Pool idle thread count: 2, unprocessed jobs: 0 937s # Pool idle thread count: 2, unprocessed jobs: 0 937s # Pool idle thread count: 2, unprocessed jobs: 0 938s # Pool idle thread count: 2, unprocessed jobs: 0 938s # Pool idle thread count: 2, unprocessed jobs: 0 938s # Pool idle thread count: 2, unprocessed jobs: 0 938s # Pool idle thread count: 2, unprocessed jobs: 0 939s # Pool idle thread count: 2, unprocessed jobs: 0 939s # Pool idle thread count: 2, unprocessed jobs: 0 939s # Pool idle thread count: 2, unprocessed jobs: 0 939s # Pool idle thread count: 2, unprocessed jobs: 0 940s # Pool idle thread count: 2, unprocessed jobs: 0 940s # Pool idle thread count: 2, unprocessed jobs: 0 940s # Pool idle thread count: 2, unprocessed jobs: 0 940s # Pool idle thread count: 2, unprocessed jobs: 0 941s # Pool idle thread count: 2, unprocessed jobs: 0 941s # Pool idle thread count: 2, unprocessed jobs: 0 941s Executing: glib/thread-pool-slow.test 941s ok 7 /threadpool/idle-time 941s # slow test /threadpool/idle-time executed in 19.52 secs 941s # End of threadpool tests 941s PASS: glib/thread-pool-slow.test 941s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.5s; system=0.0s; maxrss=3744 942s autopkgtest [18:52:25]: test thread-pool-slow: -----------------------] 942s autopkgtest [18:52:25]: test thread-pool-slow: - - - - - - - - - - results - - - - - - - - - - 942s thread-pool-slow PASS 942s autopkgtest [18:52:25]: test threadtests: preparing testbed 942s Reading package lists... 943s Building dependency tree... 943s Reading state information... 943s Starting pkgProblemResolver with broken count: 0 943s Starting 2 pkgProblemResolver with broken count: 0 943s Done 944s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 944s autopkgtest [18:52:27]: test threadtests: [----------------------- 944s Running test: glib/threadtests.test 944s TAP version 14 944s # random seed: R02Sd25df800152e38ca01f8dd2e43c07207 944s 1..5 944s # Start of GObject tests 945s ok 1 /GObject/threaded-object-init 945s ok 2 /GObject/threaded-weak-ref 945s # slow test /GObject/threaded-weak-ref executed in 0.70 secs 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/2394 945s # /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 945s ok 3 /GObject/threaded-toggle-notify 945s ok 4 /GObject/threaded-g-pointer-bit-unlock-and-set 945s # Start of threaded-weak-ref tests 945s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/-/issues/2390 945s # /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. 945s ok 5 /GObject/threaded-weak-ref/on-finalization 945s # End of threaded-weak-ref tests 945s # End of GObject tests 945s PASS: glib/threadtests.test 945s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.5s; system=0.4s; maxrss=3416 946s autopkgtest [18:52:29]: test threadtests: -----------------------] 946s threadtests PASS 946s autopkgtest [18:52:29]: test threadtests: - - - - - - - - - - results - - - - - - - - - - 946s autopkgtest [18:52:29]: test timeout: preparing testbed 947s Reading package lists... 947s Building dependency tree... 947s Reading state information... 947s Starting pkgProblemResolver with broken count: 0 947s Starting 2 pkgProblemResolver with broken count: 0 947s Done 948s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 949s autopkgtest [18:52:32]: test timeout: [----------------------- 949s Running test: glib/timeout.test 949s TAP version 14 949s # random seed: R02Sfdd42f936b5c09cbd46830a5031a8e60 949s 1..5 949s # Start of timeout tests 949s # Bug Reference: https://bugzilla.gnome.org/show_bug.cgi?id=642052 951s ok 1 /timeout/seconds 951s # slow test /timeout/seconds executed in 2.10 secs 953s ok 2 /timeout/seconds-once 953s # slow test /timeout/seconds-once executed in 2.10 secs 953s # Bug Reference: https://gitlab.gnome.org/GNOME/glib/issues/1600 954s Executing: glib/timeout.test 955s ok 3 /timeout/weeks-overflow 955s # slow test /timeout/weeks-overflow executed in 2.10 secs 955s ok 4 /timeout/far-future-ready-time 959s Executing: glib/timeout.test 964s Executing: glib/timeout.test 965s ok 5 /timeout/rounding 965s # slow test /timeout/rounding executed in 9.99 secs 965s # End of timeout tests 965s PASS: glib/timeout.test 965s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=2860 965s autopkgtest [18:52:48]: test timeout: -----------------------] 966s timeout PASS 966s autopkgtest [18:52:49]: test timeout: - - - - - - - - - - results - - - - - - - - - - 966s autopkgtest [18:52:49]: test timer: preparing testbed 966s Reading package lists... 966s Building dependency tree... 966s Reading state information... 967s Starting pkgProblemResolver with broken count: 0 967s Starting 2 pkgProblemResolver with broken count: 0 967s Done 967s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 968s autopkgtest [18:52:51]: test timer: [----------------------- 968s Running test: glib/timer.test 968s TAP version 14 968s # random seed: R02S832e787798a062be73cf1f30d4713a4f 968s 1..10 968s # Start of timer tests 968s ok 1 /timer/basic 968s ok 2 /timer/stop 968s ok 3 /timer/continue 968s ok 4 /timer/reset 968s ok 5 /timer/is_active 968s # End of timer tests 968s # Start of timeval tests 968s ok 6 /timeval/add 968s ok 7 /timeval/from-iso8601 968s ok 8 /timeval/to-iso8601 968s # Start of to-iso8601 tests 968s ok 9 /timeval/to-iso8601/overflow 968s # End of to-iso8601 tests 968s # End of timeval tests 968s # Start of usleep tests 968s ok 10 /usleep/with-zero-wait 968s # End of usleep tests 968s PASS: glib/timer.test 968s SUMMARY: total=1; passed=1; skipped=0; failed=0; user=0.0s; system=0.0s; maxrss=2940 968s autopkgtest [18:52:51]: test timer: -----------------------] 969s timer PASS 969s autopkgtest [18:52:52]: test timer: - - - - - - - - - - results - - - - - - - - - - 969s autopkgtest [18:52:52]: test 1065022-futureproofing: preparing testbed 1038s autopkgtest [18:54:01]: testbed dpkg architecture: arm64 1038s autopkgtest [18:54:01]: testbed apt version: 3.0.0 1038s autopkgtest [18:54:01]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1038s autopkgtest [18:54:01]: testbed release detected to be: plucky 1039s autopkgtest [18:54:02]: updating testbed package index (apt update) 1039s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [265 kB] 1039s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 1039s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 1039s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 1039s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [5196 B] 1039s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 Packages [5840 B] 1039s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 c-n-f Metadata [252 B] 1039s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted arm64 c-n-f Metadata [224 B] 1039s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 Packages [16.6 kB] 1039s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe arm64 c-n-f Metadata [8288 B] 1039s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse arm64 c-n-f Metadata [324 B] 1040s Fetched 302 kB in 0s (684 kB/s) 1041s Reading package lists... 1042s autopkgtest [18:54:05]: upgrading testbed (apt dist-upgrade and autopurge) 1042s Reading package lists... 1042s Building dependency tree... 1042s Reading state information... 1042s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 1042s Starting 2 pkgProblemResolver with broken count: 0 1042s Done 1043s Entering ResolveByKeep 1043s 1043s Calculating upgrade... 1043s The following packages will be upgraded: 1043s tzdata 1043s 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1043s Need to get 198 kB of archives. 1043s After this operation, 0 B of additional disk space will be used. 1043s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main arm64 tzdata all 2025b-1ubuntu1.1 [198 kB] 1044s Preconfiguring packages ... 1044s Fetched 198 kB in 0s (7912 kB/s) 1044s (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 ... 85224 files and directories currently installed.) 1044s Preparing to unpack .../tzdata_2025b-1ubuntu1.1_all.deb ... 1044s Unpacking tzdata (2025b-1ubuntu1.1) over (2025b-1ubuntu1) ... 1044s Setting up tzdata (2025b-1ubuntu1.1) ... 1044s 1044s Current default time zone: 'Etc/UTC' 1044s Local time is now: Tue May 6 18:54:07 UTC 2025. 1044s Universal Time is now: Tue May 6 18:54:07 UTC 2025. 1044s Run 'dpkg-reconfigure tzdata' if you wish to change it. 1044s 1044s Reading package lists... 1045s Building dependency tree... 1045s Reading state information... 1045s Starting pkgProblemResolver with broken count: 0 1045s Starting 2 pkgProblemResolver with broken count: 0 1045s Done 1045s Solving dependencies... 1045s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1049s Reading package lists... 1049s Building dependency tree... 1049s Reading state information... 1050s Starting pkgProblemResolver with broken count: 0 1050s Starting 2 pkgProblemResolver with broken count: 0 1050s Done 1050s The following NEW packages will be installed: 1050s dconf-gsettings-backend dconf-service dpkg-repack gsettings-desktop-schemas 1050s libdconf1 1050s 0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded. 1050s Need to get 138 kB of archives. 1050s After this operation, 701 kB of additional disk space will be used. 1050s Get:1 http://ftpmaster.internal/ubuntu plucky/main arm64 libdconf1 arm64 0.40.0-5 [40.0 kB] 1050s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 dconf-service arm64 0.40.0-5 [27.1 kB] 1050s Get:3 http://ftpmaster.internal/ubuntu plucky/main arm64 dconf-gsettings-backend arm64 0.40.0-5 [22.3 kB] 1050s Get:4 http://ftpmaster.internal/ubuntu plucky/main arm64 dpkg-repack all 1.54 [11.2 kB] 1050s Get:5 http://ftpmaster.internal/ubuntu plucky/main arm64 gsettings-desktop-schemas all 48.0-1ubuntu1 [37.6 kB] 1050s Fetched 138 kB in 0s (9191 kB/s) 1050s Selecting previously unselected package libdconf1:arm64. 1050s (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 ... 85224 files and directories currently installed.) 1050s Preparing to unpack .../libdconf1_0.40.0-5_arm64.deb ... 1050s Unpacking libdconf1:arm64 (0.40.0-5) ... 1050s Selecting previously unselected package dconf-service. 1050s Preparing to unpack .../dconf-service_0.40.0-5_arm64.deb ... 1050s Unpacking dconf-service (0.40.0-5) ... 1050s Selecting previously unselected package dconf-gsettings-backend:arm64. 1050s Preparing to unpack .../dconf-gsettings-backend_0.40.0-5_arm64.deb ... 1050s Unpacking dconf-gsettings-backend:arm64 (0.40.0-5) ... 1050s Selecting previously unselected package dpkg-repack. 1050s Preparing to unpack .../dpkg-repack_1.54_all.deb ... 1050s Unpacking dpkg-repack (1.54) ... 1051s Selecting previously unselected package gsettings-desktop-schemas. 1051s Preparing to unpack .../gsettings-desktop-schemas_48.0-1ubuntu1_all.deb ... 1051s Unpacking gsettings-desktop-schemas (48.0-1ubuntu1) ... 1051s Setting up dpkg-repack (1.54) ... 1051s Setting up libdconf1:arm64 (0.40.0-5) ... 1051s Setting up dconf-service (0.40.0-5) ... 1051s Setting up dconf-gsettings-backend:arm64 (0.40.0-5) ... 1051s Setting up gsettings-desktop-schemas (48.0-1ubuntu1) ... 1051s Processing triggers for man-db (2.13.0-1) ... 1051s Processing triggers for libglib2.0-0t64:arm64 (2.84.1-1) ... 1051s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1055s autopkgtest [18:54:18]: test 1065022-futureproofing: [----------------------- 1056s + export DEBIAN_FRONTEND=noninteractive 1056s + n=0 1056s + failed=0 1056s + binary_package=libglib2.0-0t64 1056s + future_binary_package=libglib2.0-0xyz 1056s + pwd 1056s + srcdir=/tmp/autopkgtest.TvVmSg/build.XBl/src 1056s + mktemp -d 1056s + tmpdir=/tmp/tmp.So0yq4vS4c 1056s + cd /tmp/tmp.So0yq4vS4c 1056s + [ -e /tmp/autopkgtest.TvVmSg/build.XBl/src/debian/tests/manual/local-1065022.sources ] 1056s + dpkg-query -W dpkg-repack 1056s dpkg-repack 1.54 1056s + dpkg-repack --generate libglib2.0-0t64 1056s dpkg-repack: warning: unknown information field 'Original-Maintainer' in input data in stanza in dpkg's status file 1056s dpkg-repack: info: created dpkg-repack.libglib2.0-0t64.aVPagV for libglib2.0-0t64 1056s dpkg-repack: info: to build use: "dpkg-deb --build dpkg-repack.libglib2.0-0t64.aVPagV ." 1056s + grep -q ^Breaks: dpkg-repack.libglib2.0-0t64.aVPagV/DEBIAN/control 1056s + grep -q ^Provides: dpkg-repack.libglib2.0-0t64.aVPagV/DEBIAN/control 1056s + grep -q ^Replaces: dpkg-repack.libglib2.0-0t64.aVPagV/DEBIAN/control 1056s + env binary_package=libglib2.0-0t64 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}/; -e s/^(Replaces:.*)$/$1, $ENV{binary_package}/; dpkg-repack.libglib2.0-0t64.aVPagV/DEBIAN/control 1056s + dpkg-deb --build dpkg-repack.libglib2.0-0t64.aVPagV libglib2.0-0xyz.deb 1056s dpkg-deb: building package 'libglib2.0-0xyz' in 'libglib2.0-0xyz.deb'. 1057s + apt-get -y install ./libglib2.0-0xyz.deb 1057s Reading package lists... 1057s Building dependency tree... 1057s Reading state information... 1058s Solving dependencies... 1058s The following packages were automatically installed and are no longer required: 1058s apport-symptoms exfatprogs fwupd-signed jq libatasmart4 libbytesize-common 1058s libbytesize1 libdrm-amdgpu1 libflashrom1 libftdi1-2 libgpgme11t64 libicu76 1058s libinih1 libjq1 libjson-glib-1.0-common libnspr4 libnss3 libnvme1t64 1058s libonig5 libprotobuf-c1 python3-apport python3-configobj python3-debconf 1058s python3-markdown-it python3-mdurl python3-problem-report python3-pygments 1058s python3-rich python3-systemd 1058s Use 'sudo apt autoremove' to remove them. 1058s The following additional packages will be installed: 1058s xdg-user-dirs 1058s Suggested packages: 1058s low-memory-monitor 1058s Recommended packages: 1058s shared-mime-info 1058s The following packages will be REMOVED: 1058s apport apport-core-dump-handler bolt cloud-init cloud-init-base 1058s dconf-gsettings-backend dconf-service fwupd gir1.2-girepository-2.0 1058s gir1.2-glib-2.0 gsettings-desktop-schemas libblockdev-crypto3 1058s libblockdev-fs3 libblockdev-loop3 libblockdev-mdraid3 libblockdev-nvme3 1058s libblockdev-part3 libblockdev-swap3 libblockdev-utils3 libblockdev3 1058s libdconf1 libfwupd3 libgirepository-1.0-1 libglib2.0-0t64 libgudev-1.0-0 1058s libjcat1 libjson-glib-1.0-0 libmbim-glib4 libmbim-proxy libmm-glib0 1058s libnetplan1 libpolkit-agent-1-0 libpolkit-gobject-1-0 libqmi-glib5 1058s libqmi-proxy libqrtr-glib0 libudisks2-0 libvolume-key1 libxmlb2 1058s netplan-generator netplan.io networkd-dispatcher python3-dbus python3-gi 1058s python3-netplan shared-mime-info ubuntu-minimal udisks2 xfsprogs 1058s The following NEW packages will be installed: 1058s libglib2.0-0xyz xdg-user-dirs 1058s 0 upgraded, 2 newly installed, 49 to remove and 0 not upgraded. 1058s Need to get 18.5 kB/1591 kB of archives. 1058s After this operation, 38.7 MB disk space will be freed. 1058s Get:1 /tmp/tmp.So0yq4vS4c/libglib2.0-0xyz.deb libglib2.0-0xyz arm64 2.84.1-1 [1572 kB] 1058s Get:2 http://ftpmaster.internal/ubuntu plucky/main arm64 xdg-user-dirs arm64 0.18-2 [18.5 kB] 1058s Fetched 18.5 kB in 0s (735 kB/s) 1058s (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 ... 85293 files and directories currently installed.) 1058s Removing bolt (0.9.8-1) ... 1059s Removing cloud-init (25.1.1-0ubuntu2) ... 1059s Removing cloud-init-base (25.1.1-0ubuntu2) ... 1059s Removing gsettings-desktop-schemas (48.0-1ubuntu1) ... 1059s Removing dconf-gsettings-backend:arm64 (0.40.0-5) ... 1059s Removing dconf-service (0.40.0-5) ... 1059s Removing fwupd (2.0.7-1) ... 1059s Removing networkd-dispatcher (2.2.4-1.1) ... 1060s Removing udisks2 (2.10.1-11ubuntu2) ... 1060s Removing libblockdev-crypto3:arm64 (3.3.0-2) ... 1060s Removing libblockdev-fs3:arm64 (3.3.0-2) ... 1060s Removing libblockdev-loop3:arm64 (3.3.0-2) ... 1060s Removing libblockdev-mdraid3:arm64 (3.3.0-2) ... 1060s Removing libblockdev-nvme3:arm64 (3.3.0-2) ... 1060s Removing libblockdev-part3:arm64 (3.3.0-2) ... 1060s Removing libblockdev-swap3:arm64 (3.3.0-2) ... 1060s Removing libblockdev3:arm64 (3.3.0-2) ... 1060s Removing libblockdev-utils3:arm64 (3.3.0-2) ... 1060s Removing libdconf1:arm64 (0.40.0-5) ... 1060s Removing libfwupd3:arm64 (2.0.7-1) ... 1060s Removing shared-mime-info (2.4-5build1) ... 1060s Removing xfsprogs (6.13.0-2ubuntu1) ... 1061s Removing python3-dbus (1.3.2-5build5) ... 1061s Removing libgudev-1.0-0:arm64 (1:238-6) ... 1061s Removing libjcat1:arm64 (0.2.0-2build3) ... 1061s Removing libjson-glib-1.0-0:arm64 (1.10.6+ds-2) ... 1061s Removing libqmi-proxy (1.35.6-1) ... 1061s Removing libqmi-glib5:arm64 (1.35.6-1) ... 1061s Removing libmbim-proxy (1.31.2-0ubuntu4) ... 1061s Removing libmbim-glib4:arm64 (1.31.2-0ubuntu4) ... 1061s Removing libmm-glib0:arm64 (1.23.4-0ubuntu3) ... 1061s Removing ubuntu-minimal (1.549) ... 1061s Removing netplan.io (1.1.2-2ubuntu1) ... 1061s dpkg: warning: while removing netplan.io, directory '/usr/share/netplan/netplan_cli/cli/commands' not empty so not removed 1061s Removing python3-netplan (1.1.2-2ubuntu1) ... 1061s Removing netplan-generator (1.1.2-2ubuntu1) ... 1061s dpkg: warning: while removing netplan-generator, directory '/etc/netplan' not empty so not removed 1061s Removing libnetplan1:arm64 (1.1.2-2ubuntu1) ... 1061s Removing libpolkit-agent-1-0:arm64 (126-2) ... 1061s Removing libpolkit-gobject-1-0:arm64 (126-2) ... 1061s Removing libqrtr-glib0:arm64 (1.2.2-1ubuntu4) ... 1061s Removing libudisks2-0:arm64 (2.10.1-11ubuntu2) ... 1061s Removing libvolume-key1:arm64 (0.3.12-9) ... 1061s Removing libxmlb2:arm64 (0.3.22-1) ... 1061s Removing apport (2.32.0-0ubuntu5) ... 1062s Removing apport-core-dump-handler (2.32.0-0ubuntu5) ... 1062s Removing python3-gi (3.50.0-4build1) ... 1062s Removing gir1.2-girepository-2.0:arm64 (1.84.0-1) ... 1062s Removing gir1.2-glib-2.0:arm64 (2.84.1-1) ... 1062s Removing libgirepository-1.0-1:arm64 (1.84.0-1) ... 1062s Removing libglib2.0-0t64:arm64 (2.84.1-1) ... 1062s Selecting previously unselected package libglib2.0-0xyz:arm64. 1062s (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 ... 84150 files and directories currently installed.) 1062s Preparing to unpack .../libglib2.0-0xyz.deb ... 1062s Unpacking libglib2.0-0xyz:arm64 (2.84.1-1) ... 1062s Selecting previously unselected package xdg-user-dirs. 1062s Preparing to unpack .../xdg-user-dirs_0.18-2_arm64.deb ... 1062s Unpacking xdg-user-dirs (0.18-2) ... 1062s Setting up xdg-user-dirs (0.18-2) ... 1062s Setting up libglib2.0-0xyz:arm64 (2.84.1-1) ... 1062s No schema files found: removed existing output file. 1062s Processing triggers for dbus (1.16.2-2ubuntu1) ... 1063s Processing triggers for initramfs-tools (0.147ubuntu1) ... 1063s update-initramfs: Generating /boot/initrd.img-6.14.0-15-generic 1063s W: No lz4 in /usr/bin:/sbin:/bin, using gzip 1075s System running in EFI mode, skipping. 1075s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1075s Processing triggers for man-db (2.13.0-1) ... 1076s not ok 1 - test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml exit status 1 1076s not ok 2 - test -s /usr/share/glib-2.0/schemas/gschemas.compiled exit status 1 1076s not ok 3 - test -e /usr/lib/*/gio/modules/libdconfsettings.so exit status 1 1076s not ok 4 - test -s /usr/lib/*/gio/modules/libdconfsettings.so exit status 1 1076s not ok 5 - test -e /usr/lib/*/gio/modules/giomodule.cache exit status 1 1076s not ok 6 - test -s /usr/lib/*/gio/modules/giomodule.cache exit status 1 1076s + assert test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1076s + n=1 1076s + test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1076s + echo not ok 1 - test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml exit status 1 1076s + failed=1 1076s + assert test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1076s + n=2 1076s + test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1076s + echo not ok 2 - test -s /usr/share/glib-2.0/schemas/gschemas.compiled exit status 1 1076s + failed=1 1076s + assert test -e /usr/lib/*/gio/modules/libdconfsettings.so 1076s + n=3 1076s + test -e /usr/lib/*/gio/modules/libdconfsettings.so 1076s + echo not ok 3 - test -e /usr/lib/*/gio/modules/libdconfsettings.so exit status 1 1076s + failed=1 1076s + assert test -s /usr/lib/*/gio/modules/libdconfsettings.so 1076s + n=4 1076s + test -s /usr/lib/*/gio/modules/libdconfsettings.so 1076s + echo not ok 4 - test -s /usr/lib/*/gio/modules/libdconfsettings.so exit status 1 1076s + failed=1 1076s + assert test -e /usr/lib/*/gio/modules/giomodule.cache 1076s + n=5 1076s + test -e /usr/lib/*/gio/modules/giomodule.cache 1076s + echo not ok 5 - test -e /usr/lib/*/gio/modules/giomodule.cache exit status 1 1076s + failed=1 1076s + assert test -s /usr/lib/*/gio/modules/giomodule.cache 1076s + n=6 1076s + test -s /usr/lib/*/gio/modules/giomodule.cache 1076s + echo not ok 6 - test -s /usr/lib/*/gio/modules/giomodule.cache exit status 1 1076s + failed=1 1076s + apt-get -y purge libglib2.0-0t64 1076s Reading package lists... 1077s Building dependency tree... 1077s Reading state information... 1077s The following packages were automatically installed and are no longer required: 1077s apport-symptoms exfatprogs fwupd-signed jq libatasmart4 libbytesize-common 1077s libbytesize1 libdrm-amdgpu1 libflashrom1 libftdi1-2 libgpgme11t64 libicu76 1077s libinih1 libjq1 libjson-glib-1.0-common libnspr4 libnss3 libnvme1t64 1077s libonig5 libprotobuf-c1 python3-apport python3-configobj python3-debconf 1077s python3-markdown-it python3-mdurl python3-problem-report python3-pygments 1077s python3-rich python3-systemd 1077s Use 'sudo apt autoremove' to remove them. 1077s The following packages will be REMOVED: 1077s libglib2.0-0t64* 1077s 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. 1077s After this operation, 0 B of additional disk space will be used. 1077s (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 ... 84185 files and directories currently installed.) 1077s Purging configuration files for libglib2.0-0t64:arm64 (2.84.1-1) ... 1078s + assert test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1078s + n=7 1078s + test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1078s + echo not ok 7 - test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml exit status 1 1078s + failed=1 1078s + assert test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1078s + n=8 1078s + test -s /usr/share/glib-2.0/schemas/gschemas.compiled 1078s + echo not ok 8 - test -s /usr/share/glib-2.0/schemas/gschemas.compiled exit status 1 1078s + failed=1 1078s + assert test -e /usr/lib/*/gio/modules/libdconfsettings.so 1078s + n=9 1078s + test -e /usr/lib/*/gio/modules/libdconfsettings.so 1078s + echo not ok 9 - test -e /usr/lib/*/gio/modules/libdconfsettings.so exit status 1 1078s + failed=1 1078s + assert test -s /usr/lib/*/gio/modules/libdconfsettings.so 1078s + n=10 1078s + test -s /usr/lib/*/gio/modules/libdconfsettings.so 1078s + echo not ok 10 - test -s /usr/lib/*/gio/modules/libdconfsettings.so exit status 1 1078s + failed=1 1078s + assert test -e /usr/lib/*/gio/modules/giomodule.cache 1078s + n=11 1078s + test -e /usr/lib/*/gio/modules/giomodule.cache 1078s + echo not ok 11 - test -e /usr/lib/*/gio/modules/giomodule.cache exit status 1 1078s + failed=1 1078s + assert test -s /usr/lib/*/gio/modules/giomodule.cache 1078s + n=12 1078s + test -s /usr/lib/*/gio/modules/giomodule.cache 1078s + echo not ok 12 - test -s /usr/lib/*/gio/modules/giomodule.cache exit status 1 1078s + failed=1 1078s + apt-get -y purge libglib2.0-0xyz 1078s not ok 7 - test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml exit status 1 1078s not ok 8 - test -s /usr/share/glib-2.0/schemas/gschemas.compiled exit status 1 1078s not ok 9 - test -e /usr/lib/*/gio/modules/libdconfsettings.so exit status 1 1078s not ok 10 - test -s /usr/lib/*/gio/modules/libdconfsettings.so exit status 1 1078s not ok 11 - test -e /usr/lib/*/gio/modules/giomodule.cache exit status 1 1078s not ok 12 - test -s /usr/lib/*/gio/modules/giomodule.cache exit status 1 1078s Reading package lists... 1078s Building dependency tree... 1078s Reading state information... 1078s The following packages were automatically installed and are no longer required: 1078s apport-symptoms exfatprogs fwupd-signed jq libatasmart4 libatomic1 1078s libbytesize-common libbytesize1 libdrm-amdgpu1 libflashrom1 libftdi1-2 1078s libglib2.0-data libgpgme11t64 libicu76 libinih1 libjq1 1078s libjson-glib-1.0-common libnspr4 libnss3 libnvme1t64 libonig5 libprotobuf-c1 1078s python3-apport python3-configobj python3-debconf python3-markdown-it 1078s python3-mdurl python3-problem-report python3-pygments python3-rich 1078s python3-systemd xdg-user-dirs 1078s Use 'sudo apt autoremove' to remove them. 1078s The following packages will be REMOVED: 1078s libglib2.0-0xyz* 1079s 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. 1079s After this operation, 4972 kB disk space will be freed. 1079s (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 ... 84185 files and directories currently installed.) 1079s Removing libglib2.0-0xyz:arm64 (2.84.1-1) ... 1079s Processing triggers for libc-bin (2.41-6ubuntu1) ... 1079s (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 ... 84160 files and directories currently installed.) 1079s Purging configuration files for libglib2.0-0xyz:arm64 (2.84.1-1) ... 1079s ok 13 - unsuccessful as expected: test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1079s ok 14 - unsuccessful as expected: test -e /usr/share/glib-2.0/schemas/gschemas.compiled 1079s ok 15 - unsuccessful as expected: test -e /usr/lib/*/gio/modules/libdconfsettings.so 1079s ok 16 - unsuccessful as expected: test -e /usr/lib/*/gio/modules/giomodule.cache 1079s 1..16 1079s + assert_not test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1079s + n=13 1079s + test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1079s + echo ok 13 - unsuccessful as expected: test -e /usr/share/glib-2.0/schemas/org.gnome.desktop.interface.gschema.xml 1079s + assert_not test -e /usr/share/glib-2.0/schemas/gschemas.compiled 1079s + n=14 1079s + test -e /usr/share/glib-2.0/schemas/gschemas.compiled 1079s + echo ok 14 - unsuccessful as expected: test -e /usr/share/glib-2.0/schemas/gschemas.compiled 1079s + assert_not test -e /usr/lib/*/gio/modules/libdconfsettings.so 1079s + n=15 1079s + test -e /usr/lib/*/gio/modules/libdconfsettings.so 1079s + echo ok 15 - unsuccessful as expected: test -e /usr/lib/*/gio/modules/libdconfsettings.so 1079s + assert_not test -e /usr/lib/*/gio/modules/giomodule.cache 1079s + n=16 1079s + test -e /usr/lib/*/gio/modules/giomodule.cache 1079s + echo ok 16 - unsuccessful as expected: test -e /usr/lib/*/gio/modules/giomodule.cache 1079s + echo 1..16 1079s + exit 1 1079s autopkgtest [18:54:42]: test 1065022-futureproofing: -----------------------] 1080s autopkgtest [18:54:43]: test 1065022-futureproofing: - - - - - - - - - - results - - - - - - - - - - 1080s 1065022-futureproofing FLAKY non-zero exit status 1 1080s autopkgtest [18:54:43]: @@@@@@@@@@@@@@@@@@@@ summary 1080s build PASS (superficial) 1080s build-static PASS (superficial) 1080s girepository-tools PASS (superficial) 1080s libgio-2.0-dev-bin PASS (superficial) 1080s libglib2.0-dev PASS (superficial) 1080s installed-tests PASS 1080s closure-refcount PASS 1080s debugcontroller PASS 1080s gdbus-server-auth PASS 1080s gdbus-threading PASS 1080s gmenumodel PASS 1080s mainloop PASS 1080s memory-monitor-dbus PASS 1080s socket PASS 1080s testfilemonitor PASS 1080s thread-pool-slow PASS 1080s threadtests PASS 1080s timeout PASS 1080s timer PASS 1080s 1065022-futureproofing FLAKY non-zero exit status 1 1095s nova [W] Using flock in prodstack7-arm64 1095s Creating nova instance adt-plucky-arm64-glib2.0-20250506-183642-juju-7f2275-prod-proposed-migration-environment-20-17afa83c-fdf9-4057-b611-075aacd876b4 from image adt/ubuntu-plucky-arm64-server-20250506.img (UUID 8fd9e2cb-0db5-4c6d-99b6-bce8533eebcd)... 1095s nova [W] Timed out waiting for 6d1be65f-2cde-4c9c-b845-a44b4bebfac2 to get deleted. 1095s nova [W] Using flock in prodstack7-arm64 1095s Creating nova instance adt-plucky-arm64-glib2.0-20250506-183642-juju-7f2275-prod-proposed-migration-environment-20-17afa83c-fdf9-4057-b611-075aacd876b4 from image adt/ubuntu-plucky-arm64-server-20250506.img (UUID 8fd9e2cb-0db5-4c6d-99b6-bce8533eebcd)... 1095s nova [W] Timed out waiting for 48046b00-5635-4b7d-a7be-0f6549ef7e05 to get deleted. 1095s nova [W] Using flock in prodstack7-arm64 1095s Creating nova instance adt-plucky-arm64-glib2.0-20250506-183642-juju-7f2275-prod-proposed-migration-environment-20-17afa83c-fdf9-4057-b611-075aacd876b4 from image adt/ubuntu-plucky-arm64-server-20250506.img (UUID 8fd9e2cb-0db5-4c6d-99b6-bce8533eebcd)... 1095s nova [W] Timed out waiting for db80a414-ebbe-4f7b-bfec-f8170fe5f86d to get deleted. 1095s nova [W] Using flock in prodstack7-arm64 1095s Creating nova instance adt-plucky-arm64-glib2.0-20250506-183642-juju-7f2275-prod-proposed-migration-environment-20-17afa83c-fdf9-4057-b611-075aacd876b4 from image adt/ubuntu-plucky-arm64-server-20250506.img (UUID 8fd9e2cb-0db5-4c6d-99b6-bce8533eebcd)... 1095s nova [W] Timed out waiting for 2df2b5df-4dd6-4206-90ea-5eebd53d46a7 to get deleted. 1095s nova [W] Using flock in prodstack7-arm64 1095s Creating nova instance adt-plucky-arm64-glib2.0-20250506-183642-juju-7f2275-prod-proposed-migration-environment-20-17afa83c-fdf9-4057-b611-075aacd876b4 from image adt/ubuntu-plucky-arm64-server-20250506.img (UUID 8fd9e2cb-0db5-4c6d-99b6-bce8533eebcd)... 1095s nova [W] Timed out waiting for cbcaa3b2-acc7-4da9-b7b4-43d174a3de84 to get deleted. 1095s nova [W] Using flock in prodstack7-arm64 1095s Creating nova instance adt-plucky-arm64-glib2.0-20250506-183642-juju-7f2275-prod-proposed-migration-environment-20-17afa83c-fdf9-4057-b611-075aacd876b4 from image adt/ubuntu-plucky-arm64-server-20250506.img (UUID 8fd9e2cb-0db5-4c6d-99b6-bce8533eebcd)... 1095s nova [W] Timed out waiting for 7525890e-47e1-46a9-a133-e50e4587935b to get deleted.