Author Topic: SE2016 RC1 Slick Stack  (Read 2070 times)

rajkej

  • Senior Community Member
  • Posts: 286
  • Hero Points: 13
SE2016 RC1 Slick Stack
« on: September 13, 2016, 03:04:20 pm »
I have two windows open side-by-side. One was in plain text mode and the other was a .cpp file. After installing SE2016 RC1 I rebuilt my tag files. When I moved focus from the plain text mode file to the .cpp file I got the attached stack.

Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 5052
  • Hero Points: 418
Re: SE2016 RC1 Slick Stack
« Reply #1 on: September 13, 2016, 03:25:39 pm »
Please post the stack. It should be in one of the .log files in <config>/logs.

Thanks

rajkej

  • Senior Community Member
  • Posts: 286
  • Hero Points: 13
Re: SE2016 RC1 Slick Stack
« Reply #2 on: September 13, 2016, 03:47:56 pm »
Here you go.

Dan

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2412
  • Hero Points: 135
Re: SE2016 RC1 Slick Stack
« Reply #3 on: September 13, 2016, 08:02:32 pm »
I can't reproduce this so far.  Can you reproduce this?

rajkej

  • Senior Community Member
  • Posts: 286
  • Hero Points: 13
Re: SE2016 RC1 Slick Stack
« Reply #4 on: September 13, 2016, 08:16:39 pm »
I haven't seen it again. Does the stack give you any indication of what went wrong? It seemed to be calling something to do with the preview window.

Dan

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2412
  • Hero Points: 135
Re: SE2016 RC1 Slick Stack
« Reply #5 on: September 13, 2016, 08:31:45 pm »
Yes.  It looks like you hovered over a file tab and it tried to get tagging information for that window, but it the entry for that window ID was null.

Did you reload any SlickEdit modules?

rajkej

  • Senior Community Member
  • Posts: 286
  • Hero Points: 13
Re: SE2016 RC1 Slick Stack
« Reply #6 on: September 13, 2016, 08:33:48 pm »
All I did after the stack was to shutdown SE and restart it. I didn't manually change anything else.

What I recall was installing SE 2016 RC1. Starting it and letting it copy its configuration. Then I switched projects and rebuilt tag files for three of my recent projects. Then I was working on code and this happened.

Dan

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2412
  • Hero Points: 135
Re: SE2016 RC1 Slick Stack
« Reply #7 on: September 13, 2016, 08:35:07 pm »
Do you know how to upload your config to the support site?

rajkej

  • Senior Community Member
  • Posts: 286
  • Hero Points: 13
Re: SE2016 RC1 Slick Stack
« Reply #8 on: September 13, 2016, 08:39:17 pm »
I usually have done that with a support ticket, not via these forums. The file might be too big for attaching on this site. Do you have a link of where I post it?

Mike

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 100
  • Hero Points: 20
Re: SE2016 RC1 Slick Stack
« Reply #9 on: September 13, 2016, 10:13:17 pm »
If you go to http://support.slickedit.com, in the field "Your uploads will be attached to case:" you can enter an identifier like "rajkej" and let us know the identifier you used.
The files need to be compressed before attempting to upload.
« Last Edit: September 13, 2016, 10:15:09 pm by Mike »

rajkej

  • Senior Community Member
  • Posts: 286
  • Hero Points: 13
Re: SE2016 RC1 Slick Stack
« Reply #10 on: September 14, 2016, 12:39:47 pm »
Uploaded 'export all options' for 2016 RC1 using 'rajkej' as the tag.

Dan

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 2412
  • Hero Points: 135
Re: SE2016 RC1 Slick Stack
« Reply #11 on: September 14, 2016, 01:58:29 pm »
I'm still unable to reproduce this.  If you see anything else like this, please let us know.

rajkej

  • Senior Community Member
  • Posts: 286
  • Hero Points: 13
Re: SE2016 RC1 Slick Stack
« Reply #12 on: September 14, 2016, 01:59:22 pm »
Ok. Thanks for trying.

rajkej

  • Senior Community Member
  • Posts: 286
  • Hero Points: 13
Re: SE2016 RC1 Slick Stack
« Reply #13 on: September 16, 2016, 07:38:36 pm »
I think I found how to reproduce this stack. I have my own tagger implementation for a yaml like language we use at my company. I did a quick implementation of the routines below a long time ago and it has worked ever since. Maybe something changed in the tagging of SE and I need to update this implementation? Basically when I use the preview window with this tagging I get random slick-c stacks like I posted earlier.

Code: [Select]
#pragma option(strict,on)
#include "slick.sh"

///////////////////////////////////////////////////////////////////////////////
// This function is called to search for declarations within an ATIF source
// file. It searches from the current cursor location for anything that
// appears to be a function or varaible declaration.
//
int atif_proc_search( _str &proc_name, int find_first )
{
    int status;
    if ( find_first )
    {
        //If this is the first time we are called, set up the search
        //Functions that call xxx_proc_search will go to the top of the
        //buffer each time
        if ( proc_name:=='' )
        {
            //set proc_name equal to regular expression equal to a combination
            //one or more alphanumerics,_'s,and -'s
            proc_name=':v';
        }
        status=search("^(" proc_name "[:])",'ri');
    }
    else
    {
        //Just use repeat search.  This is a faster.
        status=repeat_search();
    }
    if ( status )
    {
        //There are probably no more tags.
        //Return error code(Caller probably in a loop)
        return(status);
   }

    // grab the line and parse out the variable name
    _str line="";
    get_line(line);
    parse strip(line) with proc_name ':';
    proc_name = tag_tree_compose_tag(proc_name,"","gvar",0);
    //proc_name = proc_name :+ "(gvar)";
    return(0);
}

///////////////////////////////////////////////////////////////////////////////
// Build a tag file.
// This function is used to automatically build a tag file for language-specific
// libraries and built-in functions. You can create a [lang].tagdoc file to
// document built-in functions. Look at [slickedit]/builtins/basic.tagdoc or
// html.tagdoc for some examples of how this is done.

int _atif_MaybeBuildTagFile( int &tfindex )
{
    // maybe we can recycle tag file(s)
    _str ext="atif";
    _str tagfilename="";
    if (ext_MaybeRecycleTagFile(tfindex,tagfilename,ext,ext)) {
       return(0);
    }

    // now build the extension specific tag file
    return(0);
    //return ext_BuildTagFile(tfindex,
    //                        tagfilename,
    //                        ext,
    //                        "ATIF Tags",
    //                        false,
    //                        "",
    //                        ext_builtins_path(ext,ext),
    //                        false,
    //                        false
    //                        );
}