From: dcs@neutron.chem.yale.edu (Dave Schweisguth)
Subject: Re: swais 8-b5.1 dumps core on SGI
Organization: Yale University
X-Newsreader: TIN [version 1.1 PL8]
Date: Thu, 28 Jan 1993 15:57:09 GMT

Nathan Torkington (gnat@kauri.vuw.ac.nz) wrote:
: Setup: SGI iris 4d,
: 	 running IRIX 4.0.4
: 	 WAIS 8-b5.1 release.
: Can't run gdb on the core, 'cause it claims
: 	Bad symbol table: struct/union points to non-stBlock

I have half an answer. Jonny Goldman posted some patches which fix this
problem (for all machines, not just SGIs), and I'll include them as soon as I
explain that there's another problem which as far as I know is SGI-specific.
With the patches applied to swais 8-b5.1 I can compile and run swais. I can
do a search and get a list of the results. However, the documents that I
retrieve are stripped of line feeds. Has anyone encountered and solved this
problem, on an SGI or not? Thanks in advance.

Now, here are the patches that'll get you halfway there ...

--- snip ---
*** ui/screen-ui.c.old	Sun Jul 12 17:10:25 1992
--- ui/screen-ui.c	Sat Jan 16 13:26:36 1993
***************
*** 267,272 ****
--- 267,273 ----
    long logtype, loglevel;
    char *format;

+   va_start(ap);
    logtype = va_arg(ap, int);
    loglevel = va_arg(ap, int);
    format = va_arg(ap, char*);
***************
*** 369,375 ****
  {
      char message[STRINGSIZE];

!     if (strcmp(doc->doc->type, "WSRC")) {
          fprintf(stderr, "%s", "%s is not a WAIS source.  You can only USE
WAIS sources.",
          firstphrase(trim_junk(doc->doc->headline)));
          /* PrintStatus("%s is not a WAIS source.  You can only USE WAIS
sources.",
--- 370,376 ----
  {
      char message[STRINGSIZE];

!     if ((doc->doc->type == NULL) || strcmp(doc->doc->type[0], "WSRC") != 0)
{
          fprintf(stderr, "%s", "%s is not a WAIS source.  You can only USE
WAIS sources.",
          firstphrase(trim_junk(doc->doc->headline)));
          /* PrintStatus("%s is not a WAIS source.  You can only USE WAIS
sources.",
***************
*** 805,812 ****
          mvprintw(j++,0,"%s\t%s","Company:    ",current_doc->doc->company);
      if (NULL != current_doc->doc->industry)
          mvprintw(j++,0,"%s\t%s","Industry:   ",current_doc->doc->industry);
!     if (NULL != current_doc->doc->type)
!         mvprintw(j++,0,"%s\t%s","Type:       ",current_doc->doc->type);
      mvprintw(j++,0,"%s\t%d","Score       ",current_doc->rawScore);

      mvprintw(j++,0,"%s\t%ld","# of Lines: ",current_doc->doc->numLines);
--- 806,813 ----
          mvprintw(j++,0,"%s\t%s","Company:    ",current_doc->doc->company);
      if (NULL != current_doc->doc->industry)
          mvprintw(j++,0,"%s\t%s","Industry:   ",current_doc->doc->industry);
!     if ((NULL != current_doc->doc->type) && current_doc->doc->type[0] !=
NULL)
!         mvprintw(j++,0,"%s\t%s","Type:       ",current_doc->doc->type[0]);
      mvprintw(j++,0,"%s\t%d","Score       ",current_doc->rawScore);

      mvprintw(j++,0,"%s\t%ld","# of Lines: ",current_doc->doc->numLines);
***************
*** 1044,1049 ****
--- 1045,1051 ----
      question->ResultDocuments = NULL;
      question->numresdocs = listlength((List)question->ResultDocuments);

+     question->maxresdocs = *options[6].var.intptr;
      SearchWais(question);
      question->modified = FALSE;

--- snip ---

P.S.: I'm cross-posting this to comp.sys.sgi.apps and removing the
"Distribution: comp" header, which is meaningless and may have unnecessarily
restricted the distribution of the original article.

Cheers,

--
| Dave Schweisguth   Yale MB&B & Chemistry   Net: dcs@neutron.chem.yale.edu |
| Lab phone: 203-432-5208     Fax: 203-432-6144    Home phone: 203-624-3866 |
| For complying with the NJ Right To Know Act:  Contents partially unknown. |
Newsgroups: comp.infosystems.wais