Skip to content

Commit

Permalink
main/tig: fix printing of time_t values on 32 bit arches
Browse files Browse the repository at this point in the history
  • Loading branch information
nmeum committed Feb 14, 2021
1 parent 8e6bfd3 commit 67c8dce
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 3 deletions.
8 changes: 5 additions & 3 deletions main/tig/APKBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# Maintainer: Fabian Affolter <fabian@affolter-engineering.ch>
pkgname=tig
pkgver=2.5.2
pkgrel=0
pkgrel=1
pkgdesc="Text-mode interface for the git revision control system"
url="https://jonas.github.io/tig/"
arch="all"
Expand All @@ -11,7 +11,8 @@ options="!check" # Tests are broken
depends="git"
makedepends="ncurses-dev xmlto asciidoc"
subpackages="$pkgname-doc"
source="https://github.com/jonas/tig/releases/download/tig-$pkgver/tig-$pkgver.tar.gz"
source="https://github.com/jonas/tig/releases/download/tig-$pkgver/tig-$pkgver.tar.gz
time_t.patch"

build() {
./configure \
Expand All @@ -28,4 +29,5 @@ package() {
make DESTDIR="$pkgdir" install install-doc-man
}

sha512sums="9ba503d69fe52ce717bac66b4f0147b4d073cf2993083c4837b2383c6b74f5f3884e98d6f701ff1a5d434f7a898774e0243010ead0561bb119a98b52f3a10179 tig-2.5.2.tar.gz"
sha512sums="9ba503d69fe52ce717bac66b4f0147b4d073cf2993083c4837b2383c6b74f5f3884e98d6f701ff1a5d434f7a898774e0243010ead0561bb119a98b52f3a10179 tig-2.5.2.tar.gz
de59929cfcf32457fd0a1aa884b73a182c8af37c928e1a48902c54369f67ecfd05f3cc508adfeb26adb70f5b12e013cfad907618a536ef50f4705b89ef699d87 time_t.patch"
33 changes: 33 additions & 0 deletions main/tig/time_t.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
Since musl 1.2 time_t is a 64 bit value, even on 32 bit systems. A
hotfix for printing the value is simply using PRId64 from inttypes.h
in the format string.

See: https://github.com/jonas/tig/issues/1084

diff -upr tig-2.5.2.orig/src/util.c tig-2.5.2/src/util.c
--- tig-2.5.2.orig/src/util.c 2021-02-14 13:03:52.467947432 +0100
+++ tig-2.5.2/src/util.c 2021-02-14 13:04:22.911283635 +0100
@@ -11,6 +11,8 @@
* GNU General Public License for more details.
*/

+#include <inttypes.h>
+
#include "tig/tig.h"
#include "tig/util.h"

@@ -160,12 +162,12 @@ get_relative_date(const struct time *tim

seconds /= reldate[i].in_seconds;
if (compact) {
- if (!string_nformat(buf, buflen, NULL, "%s%ld%c",
+ if (!string_nformat(buf, buflen, NULL, "%s%"PRId64"%c",
now.tv_sec >= timestamp ? "" : "-",
seconds, reldate[i].compact_symbol))
return "";

- } else if (!string_nformat(buf, buflen, NULL, "%ld %s%s %s",
+ } else if (!string_nformat(buf, buflen, NULL, "%"PRId64" %s%s %s",
seconds, reldate[i].name,
seconds > 1 ? "s" : "",
now.tv_sec >= timestamp ? "ago" : "ahead"))

0 comments on commit 67c8dce

Please sign in to comment.