Will Dietz 6 years ago committed by Will Dietz
parent dc8aca448d
commit d0ed3e5079
  1. 6
      pkgs/development/libraries/nghttp2/default.nix
  2. 63
      pkgs/development/libraries/nghttp2/fix-stream-operator.patch

@ -18,15 +18,13 @@ let inherit (stdenv.lib) optional; in
stdenv.mkDerivation rec {
name = "nghttp2-${version}";
version = "1.34.0";
version = "1.35.0";
src = fetchurl {
url = "https://github.com/nghttp2/nghttp2/releases/download/v${version}/nghttp2-${version}.tar.bz2";
sha256 = "1l5rir8d73x97p3p1x4l8cawjc9m2adnippnb27fmrbcd3rfaxbl";
sha256 = "0nfdagjb0apgvms28kr9m8k93di5fv6ww9i1jwpd83y0p4vf5zvh";
};
patches = [ ./fix-stream-operator.patch /* can't fetchpatch during bootstrap */ ];
outputs = [ "bin" "out" "dev" "lib" ];
nativeBuildInputs = [ pkgconfig ];

@ -1,63 +0,0 @@
From 153531d4d0ebe00ac95047dbf1fec1d9d694f29f Mon Sep 17 00:00:00 2001
From: Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>
Date: Sun, 7 Oct 2018 22:19:00 +0900
Subject: [PATCH] nghttpx: Use the same type as standard stream operator<<
---
src/shrpx_log.cc | 4 ++--
src/shrpx_log.h | 20 ++++++++++++++------
2 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/src/shrpx_log.cc b/src/shrpx_log.cc
index 8459d15e3..6966cf945 100644
--- a/src/shrpx_log.cc
+++ b/src/shrpx_log.cc
@@ -228,7 +228,7 @@ Log &Log::operator<<(const ImmutableString &s) {
return *this;
}
-Log &Log::operator<<(int64_t n) {
+Log &Log::operator<<(long long n) {
if (n >= 0) {
return *this << static_cast<uint64_t>(n);
}
@@ -262,7 +262,7 @@ Log &Log::operator<<(int64_t n) {
return *this;
}
-Log &Log::operator<<(uint64_t n) {
+Log &Log::operator<<(unsigned long long n) {
if (flags_ & fmt_hex) {
write_hex(n);
return *this;
diff --git a/src/shrpx_log.h b/src/shrpx_log.h
index 1130b8da8..17b90536e 100644
--- a/src/shrpx_log.h
+++ b/src/shrpx_log.h
@@ -100,12 +100,20 @@ class Log {
Log &operator<<(const char *s);
Log &operator<<(const StringRef &s);
Log &operator<<(const ImmutableString &s);
- Log &operator<<(int16_t n) { return *this << static_cast<int64_t>(n); }
- Log &operator<<(int32_t n) { return *this << static_cast<int64_t>(n); }
- Log &operator<<(int64_t n);
- Log &operator<<(uint16_t n) { return *this << static_cast<uint64_t>(n); }
- Log &operator<<(uint32_t n) { return *this << static_cast<uint64_t>(n); }
- Log &operator<<(uint64_t n);
+ Log &operator<<(short n) { return *this << static_cast<long long>(n); }
+ Log &operator<<(int n) { return *this << static_cast<long long>(n); }
+ Log &operator<<(long n) { return *this << static_cast<long long>(n); }
+ Log &operator<<(long long n);
+ Log &operator<<(unsigned short n) {
+ return *this << static_cast<unsigned long long>(n);
+ }
+ Log &operator<<(unsigned int n) {
+ return *this << static_cast<unsigned long long>(n);
+ }
+ Log &operator<<(unsigned long n) {
+ return *this << static_cast<unsigned long long>(n);
+ }
+ Log &operator<<(unsigned long long n);
Log &operator<<(float n) { return *this << static_cast<double>(n); }
Log &operator<<(double n);
Log &operator<<(long double n);
Loading…
Cancel
Save