From ffebbfdbe012cb58d1e61bd98f6bae13f10f71af Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Tue, 26 Oct 2010 16:38:54 -0600 Subject: [PATCH] ask png library for its version --- collects/racket/draw/png.rkt | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/collects/racket/draw/png.rkt b/collects/racket/draw/png.rkt index eee5a03a04..1690eaed4f 100644 --- a/collects/racket/draw/png.rkt +++ b/collects/racket/draw/png.rkt @@ -22,10 +22,15 @@ (define-ffi-definer define-png png-lib #:provide provide) -(define PNG_LIBPNG_VER_STRING - (case (system-type) - [(macosx windows) #"1.4"] - [else #"1.2"])) +(define-png png_access_version_number (_fun -> _uint32)) + +;; We support version 1.2 and 1.4... and (WARNING!) we'll optimisitically +;; assume that other versions are also ok +(define PNG_LIBPNG_VER_STRING (string->bytes/latin-1 + (let ([v (png_access_version_number)]) + (format "~s.~s" + (quotient v 10000) + (quotient (remainder v 10000) 100))))) (define _png_structp (_cpointer 'png_structp)) (define _png_infop (_cpointer 'png_infop))