This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: window-style matching broken



cstruble@vt.edu writes:
> I just got the latest CVS update, and found that any lines in my .scwmrc
> file containing
> 
> (window-style "window" ...)
> 
> are severely broken, except when "window == "*". To see if this was just
> my .scwmrc, I also tried the decor.scwmrc file in the distribution and had
> the same results. A sample backtrace from interpreting
> 
> (window-style "Gimp" #:start-on-desk 4 #:sticky #f #:mini-icon "gimp.xpm")
> 
> is
> 
> Backtrace:
>  2* [apply #<procedure make-conditional-style (condition . args)> "Gimp"
> ...]
>  3  [make-conditional-style "Gimp" #:start-on-desk ...]

[... snip lengthy middle part ...]

> 19     (let ((match-regexp #)) (lambda (win) (let* # #)))
> 20*    [make-regexp "Gimp" (regexp/icase)]
> 21*    [gsubr-apply #<compiled-closure #<primitive-procedure gsubr-apply>>
> "Gimp
> " ...] 
> 
> ERROR: In procedure gsubr-apply in expression (make-regexp string (if case-sensi
> tive # ...)):
> ERROR: out of memory
> 

This looks like there is some sort of problem with the regexp package,
or Guile's support for it on your machine, as I cannot reproduce the
problem here. 

Hmm, on second thought, the code _is_ buggy - it is in effect doing
(make-regexp "Gimp" (list 'regexp/icase)) when it _should_ be doing
(make-regexp "Gimp" (list regexp/icase)). For some reason these two
work identically with my Guile but I can't for the life of me figure
out why. Now comitting the scwm fix - try this patch if you can't wait
for anoncvs to update. I will also try to find the bug in my version
of Guile that was masking this.

Index: wininfo.scm
===================================================================
RCS file: /usr/local/repository/scwm/scheme/wininfo.scm,v
retrieving revision 1.25
retrieving revision 1.26
diff -r1.25 -r1.26
1c1
< ;;;; $Id: wininfo.scm,v 1.25 1998/11/14 23:08:49 mstachow Exp $
---
> ;;;; $Id: wininfo.scm,v 1.26 1998/11/15 19:40:52 mstachow Exp $
252c252
<                                        '(regexp/icase)))))
---
>                                        '(,regexp/icase)))))



Thanks for the bug report!

 - Maciej