Changeset 31083 in project


Ignore:
Timestamp:
07/03/14 21:38:26 (6 years ago)
Author:
ecloud
Message:

added Mario's udisks example; fixed error handling as Mario suggested; more error formatting silliness

Location:
release/4/dbus/trunk
Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • release/4/dbus/trunk/dbus.scm

    r31082 r31083  
    1616                starter-bus
    1717                known-bus-count
     18                bus-name
    1819                ; register-path ; disabled for now due to https://bugs.call-cc.org/ticket/850
    1920                unsupported-type?
     
    128129(define dbus-service (foreign-value DBUS_SERVICE_DBUS c-string))
    129130(define known-bus-count (+ 1 (max session-bus system-bus starter-bus)))
     131(define (bus-name bus)
     132        (cond
     133                [(eq? bus session-bus) (format "session bus (~a)" session-bus)]
     134                [(eq? bus system-bus) (format "system bus (~a)" system-bus)]
     135                [else (format "bus ~a" (car bus))]))
    130136
    131137(define-foreign-type handler-result int) ; really "DBusHandlerResult"
     
    704710                                                (tassq callbacks-table bus path iface mber) ))
    705711                                (unless ret
    706                                         (printf "failed to find callback for ~a ~a ~a ~a ~a~%" bus path svc iface mber)
     712                                        (printf "failed to find callback for ~a ~a ~a ~a on ~a~%" path svc iface mber (bus-name bus))
    707713                                        (for-each (lambda (bus)
    708                                                 (cond
    709                                                         [(eq? (car bus) session-bus) (printf "session bus:~%")]
    710                                                         [(eq? (car bus) system-bus) (printf "system bus:~%")]
    711                                                         [else (printf "bus ~a:~%" (car bus))])
     714                                                (printf "~a:~%" (bus-name bus))
    712715                                                (if (cdr bus)
    713716                                                        (for-each (lambda (path)
     
    757760                                        (iter-append-basic iter parm))  params)
    758761                                (free-iter iter)
    759                                 (and-let* ([err (make-error)]
     762                                (let* ([err (make-error)]
    760763                                                [reply-msg ((foreign-lambda* message-ptr ((connection-ptr conn) (message-ptr msg)
    761764                                                                        ((c-pointer (struct "DBusError")) err))
Note: See TracChangeset for help on using the changeset viewer.