diff options
Diffstat (limited to 'guile/starlet/base.scm')
-rw-r--r-- | guile/starlet/base.scm | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/guile/starlet/base.scm b/guile/starlet/base.scm index 4cb9716..ed8472d 100644 --- a/guile/starlet/base.scm +++ b/guile/starlet/base.scm @@ -171,8 +171,12 @@ ;; Set an attribute by name (define (set-attr! state fix attr-name value) - (let ((attr (find-attr fix attr-name))) - (when attr (set-in-state! state fix attr value)))) + (cond + ((symbol? attr-name) + (let ((attr (find-attr fix attr-name))) + (when attr (set-in-state! state fix attr value)))) + ((fixture-attribute? attr-name) + (set-in-state! state fix attr-name value)))) ;; Patch a new fixture |