From: Kevin M. Rosenberg Date: Thu, 21 Sep 2006 03:26:39 +0000 (+0000) Subject: r11199: 20 Sep 2006 Kevin Rosenberg X-Git-Tag: v3.8.6~44 X-Git-Url: http://git.kpe.io/?p=clsql.git;a=commitdiff_plain;h=edb8adb0dabcbdbfa7be63a749c20cada389e598 r11199: 20 Sep 2006 Kevin Rosenberg * sql/syntax.lisp: Apply patch from Marcus Pearce to correctly display sql reader syntax. --- diff --git a/ChangeLog b/ChangeLog index 60394c6..3e02280 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +20 Sep 2006 Kevin Rosenberg + * sql/syntax.lisp: Apply patch from Marcus Pearce to correctly + display sql reader syntax. + 06 Sep 2006 Kevin Rosenberg * uffi/clsql-uffi-loader.lisp, db-mysql/mysql-loader.lisp: Change from using *features* to decide on 64-bit platform and check size of most-positive-fixnum instead. diff --git a/debian/changelog b/debian/changelog index c27ec2f..f5ce994 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +cl-sql (3.7.2-1) unstable; urgency=low + + * New ustream + + -- Kevin M. Rosenberg Wed, 20 Sep 2006 21:24:22 -0600 + cl-sql (3.7.1-1) unstable; urgency=low * New upstream diff --git a/sql/syntax.lisp b/sql/syntax.lisp index 5ad83d8..be92ab5 100644 --- a/sql/syntax.lisp +++ b/sql/syntax.lisp @@ -45,9 +45,8 @@ the current syntax state." (%disable-sql-reader-syntax))) (defun %disable-sql-reader-syntax () - (when *original-reader-enter* - (set-macro-character *sql-macro-open-char* *original-reader-enter*)) - (setf *original-reader-enter* nil) + (set-macro-character *sql-macro-open-char* *original-reader-enter*) + (set-macro-character *sql-macro-close-char* *original-reader-exit*) (values)) @@ -69,10 +68,13 @@ the current syntax state." (%enable-sql-reader-syntax))) (defun %enable-sql-reader-syntax () - (unless *original-reader-enter* - (setf *original-reader-enter* (get-macro-character *sql-macro-open-char*))) - (set-macro-character *sql-macro-open-char* #'sql-reader-open) - (enable-sql-close-syntax) + (unless (eq (get-macro-character *sql-macro-open-char*) #'sql-reader-open) + (setf *original-reader-enter* (get-macro-character *sql-macro-open-char*)) + (set-macro-character *sql-macro-open-char* #'sql-reader-open)) + (unless (eq (get-macro-character *sql-macro-close-char*) + (get-macro-character #\))) + (setf *original-reader-exit* (get-macro-character *sql-macro-close-char*)) + (set-macro-character *sql-macro-close-char* (get-macro-character #\)))) (values)) (defmacro restore-sql-reader-syntax-state () @@ -102,18 +104,6 @@ reader syntax is disabled." :message (format nil "Error ~A occured while attempting to parse '~A' at file position ~A" (sql-user-error-message c) sqllist (file-position stream)))))))) -(defun disable-sql-close-syntax () - "Internal function that disables the close syntax when leaving - sql context." - (set-macro-character *sql-macro-close-char* *original-reader-exit*) - (setf *original-reader-exit* nil)) - -(defun enable-sql-close-syntax () - "Internal function that enables close syntax when entering SQL - context." - (setf *original-reader-exit* (get-macro-character *sql-macro-close-char*)) - (set-macro-character *sql-macro-close-char* (get-macro-character #\)))) - (defun generate-sql-reference (&rest arglist) (cond ((= (length arglist) 1) ; string, table or attribute (if (stringp (car arglist))