Hi,

Carlos, don't apply these patches.

Patch 1 only: wmaker crash.
Patches 1+2: wmaker crash.
Patches 1+2+3: wmaker crash.
Patches 1+2+3+4: The workspace list is not updated when change to
workspace 1. No problem with other workspaces.

Problems 1,2,3 with my original patches worked. I need check the problem
with 4.

Saludos,
kix

On 20/04/2013 16:17, Rodolfo García Peñas (kix) wrote:
> From: "Rodolfo García Peñas (kix)" <[email protected]>
> 
> The function wWorkspaceMenuUpdate() udpates the menu entries
> using the scr->current_workspace variable. The problem is that
> variable could be NULL, so wmaker will crash.
> 
> This patch include a new check to verify that scr->current_workspace
> exists before use it.
> ---
>  src/workspace.c |    9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/src/workspace.c b/src/workspace.c
> index b4cccd0..29aab12 100644
> --- a/src/workspace.c
> +++ b/src/workspace.c
> @@ -743,7 +743,7 @@ WMenu *wWorkspaceMenuMake(WScreen * scr, Bool titled)
>       return wsmenu;
>  }
>  
> -void wWorkspaceMenuUpdate(WScreen * scr, WMenu * menu)
> +void wWorkspaceMenuUpdate(WScreen *scr, WMenu *menu)
>  {
>       int i;
>       long ws;
> @@ -751,7 +751,12 @@ void wWorkspaceMenuUpdate(WScreen * scr, WMenu * menu)
>       WMenuEntry *entry;
>       int tmp;
>  
> -     if (!menu)
> +     /*
> +      * If the scr->current_workspace doesn't exists yet
> +      * is because we are starting wmaker, so we don't need
> +      * the workspace menu yet
> +      */
> +     if (!menu || !scr->current_workspace)
>               return;
>  
>       if (menu->entry_no < scr->workspace_count + MC_WORKSPACE1) {
> 


-- 
To unsubscribe, send mail to [email protected].

Reply via email to