bbidulock / icewm

A window manager designed for speed, usability, and consistency
Other
577 stars 98 forks source link

Crash on alt+tab when ColorQuickSwitchActive="" #614

Closed RaymiiOrg closed 2 years ago

RaymiiOrg commented 2 years ago

When pressing Alt+Tab to switch windows, IceWM crashes when the following option is set empty:

#  Rectangle arround the active icon in the quick switch window
ColorQuickSwitchActive=""

Commenting out that line makes Alt-Tab not crash anymore. Filling it in with a colour, like rgb:00/00/00 fixes the crash as well.

` $ icewm --version IceWM 2.7.0, Copyright 1997-2012 Marko Macek, 2001 Mathias Hasselmann. `

This is the entire theme config file:

  # $ cat .icewm/themes/RemyXP/default.theme | grep -v -e "^#" -e "^$" | xclip   
ThemeDescription="RemyXP, Based on SilverXP with large cursors from K-ath-leen" 
ThemeAuthor="Alexander Portnoy - alexpor@users.sourceforge.net"
Look=metal
Gradients="menubg.xpm menusel.xpm switchbg.xpm taskbarbg.xpm dialogbg.xpm taskbuttonbg.xpm taskbuttonactive.xpm taskbuttonminimized.xpm buttonA.xpm buttonI.xpm toolbuttonbg.xpm workspacebuttonbg.xpm workspacebuttonactive.xpm"
RolloverButtonsSupported=1 # 0/1
TaskBarClockLeds=0 # 0/1
TrayDrawBevel=0 # 0/1
TitleBarCentered=0 # 0/1
TitleBarJoinLeft=0 # 0/1
TitleBarJoinRight=0 # 0/1
ShowMenuButtonIcon=1 # 0/1
BorderSizeX=4 # [0-128]
BorderSizeY=4 # [0-128]
DlgBorderSizeX=4 # [0-128]
DlgBorderSizeY=4 # [0-128]
CornerSizeX=30 # [0-64]
CornerSizeY=30 # [0-64]
TitleBarHeight=26 # [0-128]
TitleBarJustify=0 # [0-100]
TitleBarHorzOffset=0 # [-128-128]
TitleBarVertOffset=0 # [-128-128]
ScrollBarX=16 # [0-64]
ScrollBarY=16 # [0-64]
MenuIconSize=16 # [8-128]
SmallIconSize=16 # [8-128]
LargeIconSize=32 # [8-128]
HugeIconSize=48 # [8-128]
QuickSwitchHorzMargin=3 # [0-64]
QuickSwitchVertMargin=3 # [0-64]
QuickSwitchIconMargin=4 # [0-64]
QuickSwitchIconBorder=2 # [0-64]
QuickSwitchSeparatorSize=6 # [0-64]
TitleButtonsLeft="s"
TitleButtonsRight="xmi"
TitleButtonsSupported="xmis"
TitleFontName="-*-verdana-bold-r-normal-*-13-*-*-*-p-*-koi8-r"
TitleFontNameXft="verdana:size=14:bold"
MenuFontName="-*-verdana-normal-r-normal-*-13-*-*-*-p-*-koi8-r"
MenuFontNameXft="verdana:size=14"
StatusFontName="-*-verdana-medium-r-normal-*-13-*-*-*-p-*-koi8-r"
StatusFontNameXft="verdana:size=14"
QuickSwitchFontName="-*-verdana-medium-r-normal-*-13-*-*-*-p-*-koi8-r"
QuickSwitchFontNameXft="verdana:size=14"
NormalButtonFontName="-*-verdana-medium-r-normal-*-11-*-*-*-p-*-koi8-r"
NormalButtonFontNameXft="verdana:size=9"
ActiveButtonFontName="-*-verdana-bold-r-normal-*-11-*-*-*-p-*-koi8-r"
ActiveButtonFontNameXft="verdana:size=9:bold"
NormalTaskBarFontName="-*-verdana-medium-r-normal-*-13-*-*-*-p-*-koi8-r"
NormalTaskBarFontNameXft="verdna:size=14"
ActiveTaskBarFontName="-*-verdana-bold-r-normal-*-11-*-*-*-p-*-koi8-r"
ActiveTaskBarFontNameXft="verdana:size=9:bold"
ToolButtonFontName=""
NormalWorkspaceFontName=""
ActiveWorkspaceFontName=""
MinimizedWindowFontName="-*-verdana-medium-r-normal-*-13-*-*-*-p-*-koi8-r"
MinimizedWindowFontNameXft="verdana:size=14"
ListBoxFontName="-*-verdana-medium-r-normal-*-13-*-*-*-p-*-koi8-r"
ListBoxFontNameXft="verdana:size=14"
ToolTipFontName="-*-verdana-medium-r-normal-*-12-*-*-*-p-*-koi8-r"
ToolTipFontNameXft="verdana:size=9"
ClockFontName="-*-verdana-medium-r-normal-*-13-*-*-*-p-*-koi8-r"
ClockFontNameXft="verdana:size=14"
ApmFontName="-*-verdana-medium-r-normal-*-13-*-*-*-p-*-koi8-r"
ApmFontNameXft="verdana:size=14"
InputFontName="-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
InputFontNameXft="monospace:size=14"
LabelFontName="-*-verdana-medium-r-normal-*-13-*-*-*-p-*-koi8-r"
LabelFontNameXft="verdana:size=14"
ColorDialog="rgb:e0/df/e3"
ColorNormalBorder="rgb:64/75/9b"
ColorActiveBorder="rgb:3d/55/90"
ColorNormalButton="rgb:e0/df/e3"
ColorNormalButtonText="rgb:00/00/00"
ColorActiveButton="rgb:e0/df/e3"
ColorActiveButtonText="rgb:00/00/00"
ColorNormalTitleButton="rgb:C0/C0/C0"
ColorNormalTitleButtonText="rgb:00/00/00"
ColorToolButton=""
ColorToolButtonText=""
ColorNormalWorkspaceButton=""
ColorNormalWorkspaceButtonText="rgb:00/00/00"
ColorActiveWorkspaceButton=""
ColorActiveWorkspaceButtonText="rgb:00/00/00"
ColorNormalTitleBar="rgb:6d/72/7a"
ColorNormalTitleBarText="rgb:d8/d8/d8"
ColorNormalTitleBarShadow="rgb:40/40/40"
ColorActiveTitleBar="rgb:rgb:28/4a/68"
ColorActiveTitleBarText="rgb:00/00/00"
ColorActiveTitleBarShadow="rgb:c7/c2/d1"
ColorNormalMinimizedWindow="rgb:e0/df/e3"
ColorNormalMinimizedWindowText="rgb:00/00/00"
ColorActiveMinimizedWindow="rgb:e0/df/e3"
ColorActiveMinimizedWindowText="rgb:00/00/00"
ColorNormalMenu="rgb:FF/FF/FF"
ColorNormalMenuItemText="rgb:00/00/00"
ColorActiveMenuItem="rgb:BB/B7/C7"
ColorActiveMenuItemText="rgb:00/00/00"
ColorDisabledMenuItemText="rgb:80/80/80"
ColorDisabledMenuItemShadow=""
ColorMoveSizeStatus="rgb:e0/df/e3"
ColorMoveSizeStatusText="rgb:00/00/00"
ColorDefaultTaskBar="rgb:e0/df/e3"
ColorNormalTaskBarApp="rgb:e0/df/e3"
ColorNormalTaskBarAppText="rgb:00/00/00"
ColorActiveTaskBarApp="rgb:e0/df/e3"
ColorActiveTaskBarAppText="rgb:FF/FF/FF"
ColorMinimizedTaskBarApp="rgb:e0/df/e3"
ColorMinimizedTaskBarAppText="rgb:00/00/00"
ColorInvisibleTaskBarApp="rgb:80/80/80"
ColorInvisibleTaskBarAppText="rgb:00/00/00"
ColorScrollBar="rgb:ea/ed/ef"
ColorScrollBarSlider="rgb:e0/df/e3"
ColorScrollBarButton="rgb:BB/B7/C7"
ColorScrollBarArrow="rgb:e0/df/e3"
ColorScrollBarButtonArrow="rgb:00/00/00"
ColorScrollBarInactiveArrow="rgb:00/00/00"
ColorListBox="rgb:ff/ff/ff"
ColorListBoxText="rgb:00/00/00"
ColorListBoxSelection="rgb:bb/b7/c7"
ColorListBoxSelectionText="rgb:00/00/00"
ColorToolTip="rgb:FF/FF/E1"
ColorToolTipText="rgb:00/00/00"
ColorLabel="rgb:C0/C0/C0"
ColorLabelText="rgb:00/00/00"
ColorInput="rgb:FF/FF/FF"
ColorInputText="rgb:00/00/0
gijsbers commented 2 years ago

Thanks for reporting this. If you like, you can evaluate this fix.

RaymiiOrg commented 2 years ago

I just compiled, both the commit before and this one (3e58b5), the issue is fixed. This gentoo bug: https://bugs.gentoo.org/752138 - was what put me on the right way figuring out which variable to comment out, their stacktrace points to the same place as the bugfix.

Thank you for the (very fast) response and fix!