anchor.diff:        ((error "Can't handle image type ~A" type))))
      (pointer
       (%image-surface-create-for-data source format width height 
  -     (or stride (format-stride-for-width format width))))
  -   (null (%image-surface-create format width height))))
  +     (or stride (format-stride-for-width format width))))))
   
   #?(pkg-exists-p "cairo" :atleast-version "1.6")
   (defbinding format-stride-for-width () int
  
positive.code: (defbinding %surface-status () status
    pointer)
  
  (defmethod allocate-foreign :around ((surface image-surface) &key)
    (let ((location (call-next-method)))
      (cond
        ((not (eq (%surface-status location) :success))
  
negative.code: ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  
  ;; $Id: cairo.lisp,v 1.25 2009-02-09 11:45:03 espen Exp $
  
  (in-package "CAIRO")
  
  