mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
core/file to 5.40-5
This commit is contained in:
parent
041a0fa43f
commit
86240c5e6e
3 changed files with 72 additions and 1 deletions
|
@ -8,7 +8,7 @@
|
|||
|
||||
pkgname=file
|
||||
pkgver=5.40
|
||||
pkgrel=3
|
||||
pkgrel=5
|
||||
pkgdesc='File type identification utility'
|
||||
arch=('x86_64')
|
||||
license=('custom')
|
||||
|
@ -17,10 +17,14 @@ url='https://www.darwinsys.com/file/'
|
|||
depends=('glibc' 'zlib' 'xz' 'bzip2')
|
||||
provides=('libmagic.so')
|
||||
source=("https://astron.com/pub/$pkgname/$pkgname-$pkgver.tar.gz"{,.asc}
|
||||
"pr256.patch" # fix binary detection that breaks subversion tests
|
||||
"pr261.patch" # follow-up patch which restores file 5.39 behavior
|
||||
"https://github.com/file/file/commit/9b0459afab309a82aa4e46f73a4e50dd641f3d39.patch")
|
||||
validpgpkeys=('BE04995BA8F90ED0C0C176C471112AB16CB33B3A') # Christos Zoulas
|
||||
sha256sums=('167321f43c148a553f68a0ea7f579821ef3b11c27b8cbe158e4df897e4a5dd57'
|
||||
'SKIP'
|
||||
'5fd8dc41a10ee8097ddbffad37e07ea417b6ea5ff9d416d4aadfe15bc33a46df'
|
||||
'c149311a54ee2539344d6ace2cb733e45bc1c134cd91d50d462dd9edbff916f5'
|
||||
'f5d9c964233b75d6b5ac1b95fe4cc23143fbc6070d3b136e91b542021959e7dd')
|
||||
|
||||
prepare() {
|
||||
|
|
23
core/file/pr256.patch
Normal file
23
core/file/pr256.patch
Normal file
|
@ -0,0 +1,23 @@
|
|||
From 749e1ecfc3d333e5ec8b1a2e639da7ccb2498c34 Mon Sep 17 00:00:00 2001
|
||||
From: Christos Zoulas <christos@zoulas.com>
|
||||
Date: Mon, 19 Apr 2021 18:38:04 +0000
|
||||
Subject: [PATCH] PR/256: mutableVoid: If the file is less than 3 bytes, use
|
||||
the file length to determine type
|
||||
|
||||
---
|
||||
src/encoding.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/encoding.c b/src/encoding.c
|
||||
index 0fb1f47b..31d4d125 100644
|
||||
--- a/src/encoding.c
|
||||
+++ b/src/encoding.c
|
||||
@@ -285,7 +285,7 @@ looks_ ## NAME(const unsigned char *buf, size_t nbytes, file_unichar_t *ubuf, \
|
||||
if (dist[i]) \
|
||||
u++; \
|
||||
} \
|
||||
- if (u < 3) \
|
||||
+ if (u < MIN(nbytes, 3)) \
|
||||
return 0; \
|
||||
\
|
||||
return 1; \
|
44
core/file/pr261.patch
Normal file
44
core/file/pr261.patch
Normal file
|
@ -0,0 +1,44 @@
|
|||
From c07e242e766242a44ff720c149b1bdd4924ec247 Mon Sep 17 00:00:00 2001
|
||||
From: Christos Zoulas <christos@zoulas.com>
|
||||
Date: Tue, 27 Apr 2021 19:37:14 +0000
|
||||
Subject: [PATCH] Revert the fix for PR/180. It lead to PR/261. Using character
|
||||
count heuristics ends up with confusing behavior, the following should not be
|
||||
producing different results: echo -n xx | ./file - echo -n xy |
|
||||
./file -
|
||||
|
||||
---
|
||||
src/encoding.c | 13 +-------------
|
||||
1 file changed, 1 insertion(+), 12 deletions(-)
|
||||
|
||||
diff --git a/src/encoding.c b/src/encoding.c
|
||||
index 31d4d1251..3647a481d 100644
|
||||
--- a/src/encoding.c
|
||||
+++ b/src/encoding.c
|
||||
@@ -265,9 +265,7 @@ private int \
|
||||
looks_ ## NAME(const unsigned char *buf, size_t nbytes, file_unichar_t *ubuf, \
|
||||
size_t *ulen) \
|
||||
{ \
|
||||
- size_t i, u; \
|
||||
- unsigned char dist[256]; \
|
||||
- memset(dist, 0, sizeof(dist)); \
|
||||
+ size_t i; \
|
||||
\
|
||||
*ulen = 0; \
|
||||
\
|
||||
@@ -278,16 +276,7 @@ looks_ ## NAME(const unsigned char *buf, size_t nbytes, file_unichar_t *ubuf, \
|
||||
return 0; \
|
||||
\
|
||||
ubuf[(*ulen)++] = buf[i]; \
|
||||
- dist[buf[i]]++; \
|
||||
} \
|
||||
- u = 0; \
|
||||
- for (i = 0; i < __arraycount(dist); i++) { \
|
||||
- if (dist[i]) \
|
||||
- u++; \
|
||||
- } \
|
||||
- if (u < MIN(nbytes, 3)) \
|
||||
- return 0; \
|
||||
-\
|
||||
return 1; \
|
||||
}
|
||||
|
Loading…
Reference in a new issue