mirror of
https://github.com/InstanceBrick/nightcap.git
synced 2026-10-18 22:00:56 +02:00
* po co chodzic, mozna latac * Fix jni ownership, split helpers --------- Co-authored-by: Mia <uwie@thinkwise.ro> Co-authored-by: komaruworld <rtysus228@gmail.com>
49 lines
1.9 KiB
Bash
49 lines
1.9 KiB
Bash
#!/usr/bin/env bash
|
|
# Copyright 2026 Mocktail Project Authors
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
set -Eeuo pipefail
|
|
|
|
readonly ROOT="${1:?source root is required}"
|
|
readonly TEST_ROOT="$(mktemp -d)"
|
|
trap 'rm -rf -- "${TEST_ROOT}"' EXIT
|
|
|
|
source "${ROOT}/scripts/package_standalone_webkit.sh"
|
|
GDK_PIXBUF_SOURCE="${TEST_ROOT}/source"
|
|
STAGING="${TEST_ROOT}/staging"
|
|
readonly CACHE_REL=lib/plugins/gdk-pixbuf-2.0/2.10.0/loaders.cache
|
|
mkdir -p -- "${GDK_PIXBUF_SOURCE}" "${STAGING}/${CACHE_REL%/*}"
|
|
cat >"${GDK_PIXBUF_SOURCE}/loaders.cache" <<'EOF'
|
|
# LoaderDir = /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders
|
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so"
|
|
"svg" 6 "gdk-pixbuf" "Scalable Vector Graphics" "LGPL"
|
|
"/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/io-wmf.so"
|
|
"wmf" 0 "gdk-pixbuf" "Windows Metafile" "LGPL"
|
|
"/custom/loaders/extra-loader.so"
|
|
"xpm" 0 "gdk-pixbuf" "XPM" "LGPL"
|
|
"/* XPM */" "" 100
|
|
EOF
|
|
cat >"${TEST_ROOT}/expected.cache" <<'EOF'
|
|
# LoaderDir = lib/plugins/gdk-pixbuf-2.0/2.10.0/loaders
|
|
"lib/plugins/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so"
|
|
"svg" 6 "gdk-pixbuf" "Scalable Vector Graphics" "LGPL"
|
|
"lib/plugins/gdk-pixbuf-2.0/2.10.0/loaders/io-wmf.so"
|
|
"wmf" 0 "gdk-pixbuf" "Windows Metafile" "LGPL"
|
|
"lib/plugins/gdk-pixbuf-2.0/2.10.0/loaders/extra-loader.so"
|
|
"xpm" 0 "gdk-pixbuf" "XPM" "LGPL"
|
|
"/* XPM */" "" 100
|
|
EOF
|
|
|
|
WriteClassicPixbufCache
|
|
cmp -- "${TEST_ROOT}/expected.cache" "${STAGING}/${CACHE_REL}"
|
|
|
|
# Unknown absolute entries must also be rejected outside the usual /usr tree.
|
|
printf '"/custom/unrecognized-loader"\n' >"${GDK_PIXBUF_SOURCE}/loaders.cache"
|
|
if bash -c 'source "$1"; GDK_PIXBUF_SOURCE="$2"; STAGING="$3"; WriteClassicPixbufCache' \
|
|
bash "${ROOT}/scripts/package_standalone_webkit.sh" \
|
|
"${GDK_PIXBUF_SOURCE}" "${STAGING}" >"${TEST_ROOT}/rejected.log" 2>&1; then
|
|
printf 'absolute GdkPixbuf loader path was accepted\n' >&2
|
|
exit 1
|
|
fi
|
|
grep -Fq 'absolute loader path' "${TEST_ROOT}/rejected.log"
|