From 234dc35b5df19cfe20396a10855ce4e70b8b43bc Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 14 Apr 2023 17:46:07 +0100 Subject: gentoo auto-resync : 14:04:2023 - 17:46:06 --- www-client/Manifest.gz | Bin 6192 -> 6196 bytes www-client/chromium/Manifest | 3 +- www-client/chromium/chromium-112.0.5615.49.ebuild | 1 + .../chromium/files/chromium-112-sql-relax.patch | 46 +++++++++++++++++++++ www-client/elinks/Manifest | 4 +- www-client/elinks/elinks-0.16.0.ebuild | 2 +- www-client/elinks/elinks-9999.ebuild | 2 +- www-client/firefox/Manifest | 4 +- www-client/firefox/firefox-112.0.ebuild | 2 +- 9 files changed, 56 insertions(+), 8 deletions(-) create mode 100644 www-client/chromium/files/chromium-112-sql-relax.patch (limited to 'www-client') diff --git a/www-client/Manifest.gz b/www-client/Manifest.gz index c81e53b40632..4eae53a07369 100644 Binary files a/www-client/Manifest.gz and b/www-client/Manifest.gz differ diff --git a/www-client/chromium/Manifest b/www-client/chromium/Manifest index 6bfaf819fed5..729bfe9b6509 100644 --- a/www-client/chromium/Manifest +++ b/www-client/chromium/Manifest @@ -6,6 +6,7 @@ AUX chromium-111-ozone-platform.patch 1482 BLAKE2B 613e233697fbd569a135ec1d4d92a AUX chromium-112-compiler.patch 8807 BLAKE2B 464d3fa8e4a48271b152256e1aa1e617722654eb672c65af2ad0f3d16948b6443f4d7065dfe46663b5b65c6482ca80f4aac2dbe6bb403d0ce0fb6689c3ed9401 SHA512 cb5358640d4c1d175f285c66b5d97cfc282c7444c56771b427b05ddd88e3a783d4455d3afbc5dd2bca0a03349008b4b8fd183833e5e43d47cf3215cc98398e86 AUX chromium-112-libstdc++-1.patch 3045 BLAKE2B 195dd794a4a00fb0a354ca6e8c56c102112c672ffeb28363874788aff1f3ffbf620b23fa39f824923bf5c009424f6bf01050950d5d277abf59c9944159166aa1 SHA512 29f422a076120f0de98b6af6eb2936bf4a924fd9d5cc5c4fa5bda9f6cf51288f51ba32149233030f9cb5c1382330601a67cb824bdd33cddb5c26ea5cea16606b AUX chromium-112-libstdc++.patch 2874 BLAKE2B f354b06944a761556b6d0465aee2a1dd701b18cdd272a1aa4aa68405ad05f575d1f0ef04ca2b05d5e65ce54efab31cfdf95e8963613ef7c811aaf343662e4b62 SHA512 b0307d10708b0ea9f94e941b9b734a16b4f74b7149e11cd6b30532835074e773c3499f954f38935bf7f16ebbda6dcf53695b513e56ff5bb0d810b4b1a6f4d3ac +AUX chromium-112-sql-relax.patch 2064 BLAKE2B 37f362da2af26481f15f705466ce1eb282759ddad0cdc34a967120e26a2894bd5a1f22b69f6b3749a84bd1b155c55cbaeffebb2b7405d5eb80c7c59124a90ba4 SHA512 83e852e6710a748030b001fccede282830c00db102f338dfd92a0a86865d0f25456ae9adc3ab5b33719b156b8f0274df347c18e4670c53e57568afdeaf874804 AUX chromium-98-gtk4-build.patch 3044 BLAKE2B 782dfd31a3a82d62dc0b8ffbb85cf2dbbef1c6cc47dbd8409dc0777be8d019c4ca082d75e6114b09f880f4f3e886d0f4b9631e66d46a3129e41468b70d71404c SHA512 e8acbf85274813ec81d575727b0e5d107749242d1df80e05035c9273ca0466d7358a8d7cece16c09f6996cb49ad3b1e0dcdf052af45023236f53fa6262b4e441 AUX chromium-browser.xml 407 BLAKE2B 168d78b0855546ca559cfb51aff0bc85d5e6ae974c25eb76e4a02f6d11659489c6e40397a0b2f7bc1fda336fd2c6dd8c863fccc3340719210b41c7fef51927f4 SHA512 b767fb4fd1925029d95560fc14cb7ab12ae43b2fe923e92d75e733b9723cbe1dcdf6df041a2b62554e98b79b47ef3f6028c773e72e6fd53166a021d49657aeca AUX chromium-cross-compile.patch 323 BLAKE2B 8d5091ce5287422c9688ede2563360a96b8bd34b9750dc1c8f0b6ca9aeff2c066fac2da169396baa131d971c087c78f9af53999df0e102d1f57176f5e8d3dd57 SHA512 06d3afc1aa19e57daac0e4bad37e1f365a68408240430e5e818e5a4f12e3b7519214eafa463633e447e7029f4ae13ea864ca347ad1fac117702a0be88718a954 @@ -21,5 +22,5 @@ DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b2655123 DIST chromium_111.0.5563.64-1raptor0~deb11u1.debian.tar.xz 442300 BLAKE2B ceb6691169073e1420daebba1eea1c00ab0f60786a276d116f02d8f693c542f853cc69083bb2f1dba4b2802413ba4d40591b04284a0816cbc814af99b0b9df38 SHA512 21525147a9c61de746c736b44007e57316155acdb71ba139d1b0f2f8d99ca1df7bf5087e736726f4062203e4dd20302ce3c523b9cb32309fb7ae017866f1f137 EBUILD chromium-111.0.5563.110-r1.ebuild 39047 BLAKE2B 9c5549a83388f11c149ab3fc7f6a10650ee1fdc461cc4c693ca814adfd0a45247170becb8cf5ca2462a62ced7109737eaf0d79205c514dc1d32aafa5327942a7 SHA512 3b0b324d60482e69989436cce5a3ec79b35b2676ce6ce135139e7f848fded45197c4afd0428a0b2c96a749fba281130ca1fd9feaa9a11fe41087149dc361a4b1 EBUILD chromium-111.0.5563.64.ebuild 38992 BLAKE2B a48b79ba64e4d04ec413b0b7369af14887726823358218adb4cdbe039af67e3a5c87efdef17556649d581f2280edfc01d31b1b4d4e23a5e20d35a5f8af018729 SHA512 d0e2550b9a2ee76afeab5478b7f3effe69d23a50d994aa2c1e2268c5eff14019aafdd0e9b007a409843b3060417980a2dc6d33ea9b24650901f4bd6191ee7f29 -EBUILD chromium-112.0.5615.49.ebuild 38716 BLAKE2B 9d9df054121a218a5e78baebc67b6673da4fdbb11bb5af5bd531ca8cc08a33a590e34baa9f461865807fcb2ba68c1401ca8b6f775770775efafe95799bd52dff SHA512 b23612d2eaf7b2d92d5e60791378be9958f0f91e9afdf2da82da462b2bc1ed0427b7d2d3efe5a21c74d7fefaf4db03389b938d3736b4a4039ebacc60b8f9f945 +EBUILD chromium-112.0.5615.49.ebuild 38761 BLAKE2B 42aa948b662c8b3ab5fa2f712c7daf4d265d2b39312355672bd3815969415a0e1f3626d0e7b44a39c793dc4efa380a110d68113ee05fa749f101e17f76cd2c4e SHA512 76a1e5cba2cdf0acb64b536a9d7c6f6ee53809370dbe810dd456523386ffb22f8388da143497b38890a56ac40325b22251bd644b60dc348203036d8db236f443 MISC metadata.xml 2167 BLAKE2B 3ad0af16da80ea03ce1deb54468b5668d1565742773e583f44688df3f7ea58a72271ccb58f467f0424bd601f4c7256ef6dc340a31a9a66547c3860069c812492 SHA512 6671a247003dae4accf588e2e62242286caf2310869a5ed5b327f46b484848a25d03baaf179a740ca8f7b2c30bf3095cf72c166fae8f0a15c63dad9174fa28ca diff --git a/www-client/chromium/chromium-112.0.5615.49.ebuild b/www-client/chromium/chromium-112.0.5615.49.ebuild index a0663b22f3f0..0c39b812a76f 100644 --- a/www-client/chromium/chromium-112.0.5615.49.ebuild +++ b/www-client/chromium/chromium-112.0.5615.49.ebuild @@ -340,6 +340,7 @@ src_prepare() { "${FILESDIR}/chromium-112-compiler.patch" "${FILESDIR}/chromium-112-libstdc++.patch" "${FILESDIR}/chromium-112-libstdc++-1.patch" + "${FILESDIR}/chromium-112-sql-relax.patch" ) if use ppc64 ; then diff --git a/www-client/chromium/files/chromium-112-sql-relax.patch b/www-client/chromium/files/chromium-112-sql-relax.patch new file mode 100644 index 000000000000..2510d1000034 --- /dev/null +++ b/www-client/chromium/files/chromium-112-sql-relax.patch @@ -0,0 +1,46 @@ +From 7d1394bd639e3bcf68082ac3fc33eeed6a00d2e6 Mon Sep 17 00:00:00 2001 +From: Elly Fong-Jones +Date: Thu, 02 Mar 2023 00:15:11 +0000 +Subject: [PATCH] sql: relax constraints on VirtualCursor layout + +VirtualCursor::FromSqliteCursor required that VirtualCursor had a +standard layout, but in fact VirtualCursor shouldn't have a standard +layout, and the fact that it does with libc++ is a deviation from the +C++ standard. This change: + +1. Relaxes the requirement that VirtualCursor has a standard layout, and +2. Relaxes the requirement that the sqlite_cursor_ field has to be at + offset 0 + +by use of offsetof() and pointer subtraction. This change both improves +standards compliance and makes this code build with libstdc++. + +Bug: 1380656 +Change-Id: I9c47abd9197b187da0360ca5619ccf7dadab4f33 +Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4292313 +Reviewed-by: Austin Sullivan +Commit-Queue: Elly Fong-Jones +Cr-Commit-Position: refs/heads/main@{#1111925} +--- + +diff --git a/sql/recover_module/cursor.h b/sql/recover_module/cursor.h +index 1970bdca..4cb0655 100644 +--- a/sql/recover_module/cursor.h ++++ b/sql/recover_module/cursor.h +@@ -63,12 +63,10 @@ + // |sqlite_cursor| must have been returned by VirtualTable::SqliteCursor(). + static inline VirtualCursor* FromSqliteCursor( + sqlite3_vtab_cursor* sqlite_cursor) { +- static_assert(std::is_standard_layout::value, +- "needed for the reinterpret_cast below"); +- static_assert(offsetof(VirtualCursor, sqlite_cursor_) == 0, +- "sqlite_cursor_ must be the first member of the class"); +- VirtualCursor* result = reinterpret_cast(sqlite_cursor); +- DCHECK_EQ(sqlite_cursor, &result->sqlite_cursor_); ++ VirtualCursor* result = reinterpret_cast( ++ (reinterpret_cast(sqlite_cursor) - ++ offsetof(VirtualCursor, sqlite_cursor_))); ++ CHECK_EQ(sqlite_cursor, &result->sqlite_cursor_); + return result; + } + diff --git a/www-client/elinks/Manifest b/www-client/elinks/Manifest index a1687f531f36..67951efce19b 100644 --- a/www-client/elinks/Manifest +++ b/www-client/elinks/Manifest @@ -7,6 +7,6 @@ DIST elinks-0.15.1.tar.xz 1997208 BLAKE2B dcec7054d417842e709f26bab53ddb1bf43556 DIST elinks-0.16.0.tar.xz 2029708 BLAKE2B b81dfeb303d2e33c88f063925f61dbf50a1cf8462cf3d000b70e01b210855682352303646c7d4dc2c5bdd0de41c3ce33d222c636be4d8292cbe8379b4b043ef8 SHA512 b1d6040b691610d596e0d1eae26bfe52d702272c71a2e5100ab7d6b05b24a0b88524d4fc7be3f6371e0bada1e6f0992da7505a72419ca642dec778424629a522 EBUILD elinks-0.13.5-r100.ebuild 3790 BLAKE2B c1d8ad4eddb3bd0e1c5486a6aeef0b4734a4ac7fb593755623aa1280b1990f004c391be93563b7c897f95cfe5b36c0b491dc0f6840e1a1b85fc1ce8a15b5cc4d SHA512 48d7c6bd01639a1eca8f06109fdd794a3bf5bcfa0da87f282bee8c4b8955af962b935b0e460a8f0163adb51698afce356e193591d6595c5c48da96b30e6f9eee EBUILD elinks-0.15.1-r1.ebuild 3978 BLAKE2B e68df736488a299e8d28d858ea2bda36b73c2e1215ba19a738ebf35a1926824895c0f0659a7ff9e0ef8a9da8eae962dd74cbb86c8bdfd5b6bb6761db9731228c SHA512 4f58d448a4bfeae77309062e5da0dbec2e42da7fc34b9b226d6e9d84f9e261ccfdb8e7c7171543bc8e0c97f8c371de0595110d524f66187bb36d76dcd8ca7302 -EBUILD elinks-0.16.0.ebuild 4183 BLAKE2B 4f5262b25ebac7a5eace73c3ad4ea18419d019d3d457cb2e732cd29f680ceb148d713426115954e9cfda383557c2c683e3d11bbe54c3b8927f36a457df304a44 SHA512 95acb9bf8dd9ffddabbfa83bac7ee6424b261c917ebaa4bc5eac6e897ecf1195c40635db5e93ddf49bad5b1e431ac06f81ed592f049d2326f7d3197f5b9677e6 -EBUILD elinks-9999.ebuild 4156 BLAKE2B 0fcb6f9b857b35960cf405d5ea995600d7e0cb352ca38e09e14d5f94a03821528aada97adc9bac66a51491cdb58c10aa94d97b8542e7cec72a2297b4d8eaa47f SHA512 df9948f231ffda9181519e4deb87c2e9a9c70ffad1c1496eb05feb5d7949e400e58c60d30748920737251c9ef0d51a9711fc6f174e92bbaf6630f0e8623ad418 +EBUILD elinks-0.16.0.ebuild 4183 BLAKE2B e1d487b85bc9fafd8c2d524698b3d4e467a5257635426d1d8494a1147b6bcd119dd28b3d716be08758fcfd13da4bbfcb792ae71065221c96228f5b0a1d2fff3f SHA512 485c6f31422c4322b88084f2364e95f5a385287fdf0255ce11b533e3f0c63eb6d9e72a1871085e17c78eb3455a9d4b4141bb1746c6933109be02aa3c61c8d266 +EBUILD elinks-9999.ebuild 4156 BLAKE2B c3eb23223a409e006b3d282e551b1f3728977c128c42d0e14d3b8378b9d8dcf449609f01083af4da3f149b007c475f9a7b69439895e54d984f5da2fe333e2854 SHA512 d9347f8d348b3bf8d2bbc7a30a023360559c58412495d81de19676b2baa047f67ad3289c6aca0873a8df0ed59e0137f7eb0608f8e316388c368a6c3c06467a89 MISC metadata.xml 1005 BLAKE2B 1e40dd6ba072df609a2ec93e5ae5af079137e19d38b058df45dbe63e4ecfb6facc9d89a206991713616d9c0671eece6ebbe8eeaa9e4c284e982bada17c149570 SHA512 432636be610931a5087b3ebcf70d250b212b8c4f7c236679a2a5207996393329b3db31432228fa6ac2e2fd8348d8e2c04dba9b817526ecbe314276f55e0dfe2e diff --git a/www-client/elinks/elinks-0.16.0.ebuild b/www-client/elinks/elinks-0.16.0.ebuild index 96db7e4ff653..ee2c6e22b5ed 100644 --- a/www-client/elinks/elinks-0.16.0.ebuild +++ b/www-client/elinks/elinks-0.16.0.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{9..10} ) +PYTHON_COMPAT=( python3_{9..11} ) LUA_COMPAT=( lua5-{1,2,3,4} luajit ) inherit meson lua-single python-any-r1 diff --git a/www-client/elinks/elinks-9999.ebuild b/www-client/elinks/elinks-9999.ebuild index 22a9a96dd86b..887047f30005 100644 --- a/www-client/elinks/elinks-9999.ebuild +++ b/www-client/elinks/elinks-9999.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{9..10} ) +PYTHON_COMPAT=( python3_{9..11} ) LUA_COMPAT=( lua5-{1,2,3,4} luajit ) inherit meson lua-single python-any-r1 diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest index 1ea1197e3fb5..1682144108d6 100644 --- a/www-client/firefox/Manifest +++ b/www-client/firefox/Manifest @@ -405,7 +405,7 @@ DIST firefox-111.0-xh.xpi 421019 BLAKE2B 796f3a8ff74c0704e9ed746350f73b858bd219c DIST firefox-111.0-zh-CN.xpi 602345 BLAKE2B 22d0d3cf8c580514f7ac3c2b75aaa77b108fc64941476298f8051df2b5e09f9f882bd49bc356e84f29afda64c92d9d6fbdfe5413b1b6c6654a6d865a4624b8a3 SHA512 6a234946541a1852e82baa75a94e4196d30c0c67a13965db0a955074b2640fde675470b9e6fd72ac73eaa81019b3f14e08079a641208fe67a588c31d93f3c44e DIST firefox-111.0-zh-TW.xpi 604910 BLAKE2B f5a04e08f87f5432994f2765b86616331d51ce8101b7abc8881af97dfdf88f384a0dccdcdd1c1845e221683d0dbda5a95d59c1285a06b0409164e71423db5fd0 SHA512 bf90c89fb6797fcaf83f13811e6a6c285deedeb70c7f48f310fb4cd2e664a3c633bb83ef829987ad80e3956189b67777b4b41c0742cdb1dade9dd3288f95adff DIST firefox-111.0.source.tar.xz 495743080 BLAKE2B 5262557c7e3460c5d4013040b653b5ed357a6ee3fa196a8b862ac4e884a8be64bb06896a6ef468fe702f6ab09fc2af7088de4e4c14cf832d2a3d47a18ac68f0e SHA512 cdb300fdbb2b60068b0fc10a18df587b417e484901d36f52dd174d320d3440a42b02ea000f325c5781fd8853a5171b1a5184562fb535ece90619e4c64d46bb82 -DIST firefox-112-patches-01j.tar.xz 16812 BLAKE2B 027c67af0d5bad5cd2e59905a573cb27274971c8912d3d7f30f9a781054d2a1ee56ef801df8aeaf0123214138d18ff78d4f7e9ae5cccd2b7f305fe128151a50d SHA512 3383d1c0264e23d2c45a7d9ed499615203a8684402fa126320bf4cae5b9f7f45f37fca4ae9e32a447122b8dac8e6051c6838b3b19c82b2044549fd697731cfa8 +DIST firefox-112-patches-02j.tar.xz 17296 BLAKE2B c47545a6eeec32c9a15aa0a5f9f4535e186a2b8e7c140b10f9e8665b90f9d1c74673dbbcd3e0e6e3a2232fe060f340884dbb431d755bf21537923efb4bb430e1 SHA512 d90c8cc81f5c885bce35d6872162eaefa529a37db905424eba2e223f3f02a22ecf63b503550df77d7e73b539573f2169b2f6c99e7a46623be1492467ee19782d DIST firefox-112.0-ach.xpi 459577 BLAKE2B 3adb567d9b02f04e869236b7863d2f7425fe721f0c26bafd21aef30b0a761fc7dc0aedc7abf99429d6da19c6c33d4a7669edb1531526822e20d54d802f2bd92f SHA512 e3a0487ca57ba731bfbacf7628f497b623a68324d9464a73d18e36d3331dde434d05b73abe3d8864ce684d4bddd4d20b73ee53c397dfa9f665360dd612c7fc63 DIST firefox-112.0-af.xpi 423010 BLAKE2B 6f87c4cc3eab518c111793860845c34b3131d50500211b0e5b813b376c8a13d5aee071a40e9172e2482994234d4d5764e14a24bb68a9ae8b4b86e8bcb6f0b97a SHA512 000fd456377692eca76efde709d8526c599a38fb9839018cee726ca6359d3356f42f8620b892a9082cd8dcbad5c6be1346c7ef9bfed0b97910f7a343dc0e2cac DIST firefox-112.0-an.xpi 503915 BLAKE2B 2e7e5fa8a7ade25e28edf32402a3132333019938d315483bacd3156c7c1cdeebae037d144f67a04d3dc16004012d0d855b5091249f83ebb55c84b680c903cce7 SHA512 45915bb76a712cfd437526f59bb56ce7b493bdc636f783cea1f7e4809d178189ac4622b733465147c82fece78cb49a5f81bb3ef91ee5c6f4ef55415bba55b672 @@ -510,5 +510,5 @@ EBUILD firefox-102.10.0.ebuild 36945 BLAKE2B 7fa69a1943348e1dddb8143d3012a185054 EBUILD firefox-102.9.0.ebuild 36945 BLAKE2B d641b3958e41b0d315754a2f617717c427d60f438aac6a2c93aa3e5a2387cfad94736c513968f93ef023df2e106c160ec813dde32c7ee187cff46e444e8faaa7 SHA512 6bbe6a6f8cb8478a346742a9a79aee3967ac960f666c20417d668b239c9dfbfb5308b2a905999ac3c95f084acfe57bc4923f108013e802ab8bf43cc72d2a09f4 EBUILD firefox-110.0.1.ebuild 39952 BLAKE2B 290edae219dda47fca8bb197b2732c682ad7b2128d25f2f8ce627fa3abf38b2049184fbc41ba3ee221875d63a0b1af283b92a06642798da74994f2a03a0385b5 SHA512 dbf0acb8ee4f0471b90f6a14e0639929f30b17b452ebcf553ae503cf82963c4515a85d174d20a6bc0a65fedf336aefd0067677a8f39b8768a20f385d64e9ca36 EBUILD firefox-111.0.ebuild 40327 BLAKE2B 5afbda9d07b62075ca09e2d2789b2fbf131bb45d60e637d706f8e08b55c2d1224dc90fafac24a01b9da23f59f2e39b10ceb63313aec5499eee9a5125bf826b51 SHA512 4ed44ce7b34faba1461fc26a120c3fd52c0422507248b864d61e5ff8b56c2a7f64abe0348eb90e4862f1702a1008cae2302273aa156583885ecfb39a84dbd046 -EBUILD firefox-112.0.ebuild 40323 BLAKE2B 082776bd3289a42e34e5f7f4acff13b20ec0317f89f649d4495b3e2e2487983eac4022efd2707efcbb6ed9bf3a153193eb3700518317373b8a128c117a522a69 SHA512 cd24df88a5d237091e3c9aa9bc66dd5f54d441e94705d28dc9376c09b8bc20af21e68074af0ee86ca8844a061fc6a1c145034b8b64243b8cc3a06f8c0ab463ff +EBUILD firefox-112.0.ebuild 40323 BLAKE2B caa6d90fe78953e687a6ec6ef08ee1a4ceb77e05788064797bcc16b26386d48c5de09e7cd56b5b76946e4b4c2f60d6bc711a567c50b3908c7c062386b754a1ed SHA512 4c699107ec5e65a234dcf97eaaa4ded39a9f07382a06f2b51ac98a9a9c7dd63f8cb2fcd5be1f1f7eb22013685e87de7f3bde535722df66d1885abfbcdee24828 MISC metadata.xml 2219 BLAKE2B 064f486eecd2a66ef4c9cccef46803f877039bf16bc40b699a48e28e04e816d0ad434ce65ae2e056e1a4126a67a7dd7eff16040276159c1f5aa8966b1c0d7b6c SHA512 522b09ffc2857553e240b1e7c82c11ccc281dd87c720c6292ec9314b91319e0a55ca2838f17e878f5c1e58e4f22caa1b0c3b90506b65b350beff06f3f397d897 diff --git a/www-client/firefox/firefox-112.0.ebuild b/www-client/firefox/firefox-112.0.ebuild index 65972fcd4ab0..e31065c933ab 100644 --- a/www-client/firefox/firefox-112.0.ebuild +++ b/www-client/firefox/firefox-112.0.ebuild @@ -3,7 +3,7 @@ EAPI=8 -FIREFOX_PATCHSET="firefox-112-patches-01j.tar.xz" +FIREFOX_PATCHSET="firefox-112-patches-02j.tar.xz" LLVM_MAX_SLOT=15 -- cgit v1.2.3