On Fri, 06 Jun 2014 08:34:54 +0200, Sönke Ludwig wrote:

Am 06.06.2014 02:23, schrieb Darius Clark:

Hi,

I am having a issue currently with getting segfaults when attempting to access sessions.

The current code is

class AuthenicateService{
   private SessionVar!(AuthSess, "AuthSess") authSess;
   @path("/login") @method(HTTPMethod.GET)
   void GetLogin(){
      auto auth = authSess;
      if(auth.isValid) //segfault
         redirect("/dashboard");
      render!("login.index.jade", auth);
   }
}

I do not know why it does this. In the example, there is no segfault and it points to the line thats currently commented. The other way would just adding the param for the sessions directly.

Do you have a HTTPServerSettings.sessionStore set? The strange thing
is though that there should be an assertion error message in that case,
so if this is not the reason, can you try to get full a stack trace by
running it inside GDB?

Or is AuthSess a class type and maybe still initialized to null?

When I ran gdb, I got

Program received signal SIGSEGV, Segmentation fault.
0x0000000000728b00 in services.authenicate.AuthenicateService.GetLogin() (
    this=0x7ffff7edcb80, req=0x7ffff7e8c020)
    at source/services/authenicate.d:22
22                      if(auth.isValid)

I wouldnt see why the AuthSess class would still be initialized to null. Any suggestions what I could do to fix it maybe?