diff --git a/flake.nix b/flake.nix index d94da9dae..8c60934e6 100644 --- a/flake.nix +++ b/flake.nix @@ -198,12 +198,12 @@ }; - lowdown = with final; stdenv.mkDerivation { - name = "lowdown-0.7.9"; + lowdown = with final; stdenv.mkDerivation rec { + name = "lowdown-0.8.0"; src = fetchurl { - url = https://kristaps.bsd.lv/lowdown/snapshots/lowdown-0.7.9.tar.gz; - hash = "sha512-7GQrKFICyTI5T4SinATfohiCq9TC0OgN8NmVfG3B3BZJM9J00DT8llAco8kNykLIKtl/AXuS4X8fETiCFEWEUQ=="; + url = "https://kristaps.bsd.lv/lowdown/snapshots/${name}.tar.gz"; + hash = "sha512-U9WeGoInT9vrawwa57t6u9dEdRge4/P+0wLxmQyOL9nhzOEUU2FRz2Be9H0dCjYE7p2v3vCXIYk40M+jjULATw=="; }; #src = lowdown-src; diff --git a/src/libcmd/markdown.cc b/src/libcmd/markdown.cc index 40788a42f..d25113d93 100644 --- a/src/libcmd/markdown.cc +++ b/src/libcmd/markdown.cc @@ -3,9 +3,7 @@ #include "finally.hh" #include -extern "C" { #include -} namespace nix { @@ -42,7 +40,9 @@ std::string renderMarkdownToTerminal(std::string_view markdown) throw Error("cannot allocate Markdown output buffer"); Finally freeBuffer([&]() { lowdown_buf_free(buf); }); - lowdown_term_rndr(buf, nullptr, renderer, node); + int rndr_res = lowdown_term_rndr(buf, nullptr, renderer, node); + if (!rndr_res) + throw Error("allocation error while rendering Markdown"); return std::string(buf->data, buf->size); }