From c126eea11c4ee39cbe9c0c76f920626b618b6ee9 Mon Sep 17 00:00:00 2001 From: Ralph Little Date: Sun, 1 Sep 2019 17:03:44 -0700 Subject: [PATCH] Apply debian upstream patch 0135-fix_pdf_floats Original patch commentary: Description: Fix floats in PDF and PostScript Set LC_NUMERIC to POSIX before printing floats when building PostScript or PDF output. Author: Julien BLACHE Forwarded: yes ------------ Looks like float printing format is affected by the current locale. Ensures that we always get POSIX formatting of floats. --- src/xsane-save.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/xsane-save.c b/src/xsane-save.c index f14df05..63550cc 100644 --- a/src/xsane-save.c +++ b/src/xsane-save.c @@ -26,6 +26,8 @@ #include "xsane-back-gtk.h" #include "xsane-front-gtk.h" #include "xsane-save.h" +#include +#include #include #include @@ -2425,6 +2427,7 @@ static void xsane_save_ps_create_image_header(FILE *outfile, int flatedecode) { int depth; + char *save_locale; depth = image_info->depth; @@ -2442,8 +2445,15 @@ static void xsane_save_ps_create_image_header(FILE *outfile, fprintf(outfile, "%d rotate\n", degree); fprintf(outfile, "%d %d translate\n", position_left, position_bottom); + + save_locale = strdup(setlocale(LC_NUMERIC, NULL)); + setlocale(LC_NUMERIC, "POSIX"); + fprintf(outfile, "%f %f scale\n", width, height); + setlocale(LC_NUMERIC, save_locale); + free(save_locale); + fprintf(outfile, "<<\n"); fprintf(outfile, " /ImageType 1\n"); fprintf(outfile, " /Width %d\n", image_info->image_width); @@ -3921,6 +3931,7 @@ static void xsane_save_pdf_create_page_header(FILE *outfile, struct pdf_xref *xr int position_left, position_bottom, box_left, box_bottom, box_right, box_top, depth; int left, bottom; float rad; + char *save_locale; DBG(DBG_proc, "xsane_save_pdf_create_page_header\n"); @@ -4035,8 +4046,16 @@ static void xsane_save_pdf_create_page_header(FILE *outfile, struct pdf_xref *xr fprintf(outfile, "q\n"); fprintf(outfile, "1 0 0 1 %d %d cm\n", position_left, position_bottom); /* translate */ + + save_locale = strdup(setlocale(LC_NUMERIC, NULL)); + setlocale(LC_NUMERIC, "POSIX"); + fprintf(outfile, "%f %f -%f %f 0 0 cm\n", cos(rad), sin(rad), sin(rad), cos(rad)); /* rotate */ fprintf(outfile, "%f 0 0 %f 0 0 cm\n", width, height); /* scale */ + + setlocale(LC_NUMERIC, save_locale); + free(save_locale); + fprintf(outfile, "BI\n"); fprintf(outfile, " /W %d\n", image_info->image_width); fprintf(outfile, " /H %d\n", image_info->image_height); -- 2.22.0 id=db2b0d7df0a273816475825c8523b003bab01dae'>gnu: lftp: Use G-expressions....* gnu/packages/ftp.scm (lftp)[arguments]: Use G-expressions. Change-Id: I504465e7604d9638442b063753a8cf8abf3616a9 Zheng Junjie 2024-12-01gnu: lftp: Update to 4.9.3....The updated information is sourced from the upstream repository at GitHub: https://github.com/lavv17/lftp * gnu/packages/ftp.scm (lftp): Update to 4.9.3. [source]<origin>: Switch to git upstream. [native-inputs]: Add autoconf, automake, gettext-minimal, bison, gnulib, gperf, and libtool. [arguments]<#:phases>: Add unpack-gnulib phase. Delete existing bootstrap phase. Add new bootstrap phase to invoke it after patch-source-shebangs. [home-page]: Update it. Change-Id: I73771ed7e577da4bc82a8e74550eca83413dc8de Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn> Ashish SHUKLA 2024-09-08gnu: filezilla: Use alternate source URLs....* gnu/packages/ftp.scm (filezilla)[source]: Replace dead source URL with two unofficial ones. Change-Id: I992c74d478d7f3c06365c7bd5e7a2ced8940185d Tobias Geerinckx-Rice 2024-08-31gnu: libfilezilla: Add libxcrypt dependency....* gnu/packages/ftp.scm (libfilezilla)[inputs]: Add libxcrypt. Change-Id: I8deb94c215467c44a5b58ca3fca19ae140b4af9e 宋文武 n #t. Ludovic Courtès 2022-04-11shepherd: 'exec-command*' has a valid default #:directory....Fixes a regression introduced in 938448bf40fc77092859352d2243e2d0c236375f where 'exec-command*' could get #:directory #f, in particular when called by 'fork+exec-command/container'. * gnu/build/shepherd.scm (exec-command*): Add default value for #:directory. Ludovic Courtès 2022-04-07shepherd: Adjust 'fork+exec-command/container' for the Shepherd 0.9....* gnu/build/shepherd.scm (exec-command*): New procedure, with code formerly... (make-forkexec-constructor/container): ... here. Use it. (fork+exec-command/container): Use 'fork+exec-command' only when CONTAINER-SUPPORT? is false or PID is the current process. Ludovic Courtès 2021-08-02build: shepherd: Use autoload to lazily bind Shepherd modules....Instead of imperative module-autoload! directives. * gnu/build/shepherd.scm: Replace module-autoload! directives by autoload arguments for define-module. Maxim Cournoyer