===================================================================
RCS file: /afs/w3.org/hypertext/WWW/Library/Repository/Implementation/HTML.c,v
retrieving revision 1.43
diff -c -r1.43 HTML.c
*** 1.43	1995/05/19 02:05:35
--- Library/Implementation/HTML.c	1995/10/16 22:13:47
***************
*** 68,75 ****
      HTStyle *			new_style;
      HTStyle *			old_style;
      BOOL			in_word;  /* Have just had a non-white char */
!     stack_element 	stack[MAX_NESTING];
!     stack_element 	*sp;		/* Style stack pointer */
  };
  
  struct _HTStream {
--- 68,76 ----
      HTStyle *			new_style;
      HTStyle *			old_style;
      BOOL			in_word;  /* Have just had a non-white char */
!     stack_element 		stack[MAX_NESTING];
!     stack_element 		*sp;		/* Style stack pointer */
!     int				overflow;  /* Keep track of overflow nesting */
  };
  
  struct _HTStream {
***************
*** 626,633 ****
  
      if (me->dtd->tags[element_number].contents!= SGML_EMPTY) {
          if (me->sp == me->stack) {
! 	    fprintf(TDEST, "HTML: ****** Maximum nesting of %d exceded!\n",
! 	    MAX_NESTING); 
  	    return;
  	}
      	--(me->sp);
--- 627,636 ----
  
      if (me->dtd->tags[element_number].contents!= SGML_EMPTY) {
          if (me->sp == me->stack) {
! 	    if (SGML_TRACE)
! 		fprintf(TDEST, "HTML........ Maximum nesting of %d exceded!\n",
! 			MAX_NESTING);
! 	    me->overflow++;
  	    return;
  	}
      	--(me->sp);
***************
*** 663,668 ****
--- 666,677 ----
      }
  #endif
      
+     /* If overflow of nestings, we need to get back to reality */
+     if (me->overflow > 0) {
+ 	me->overflow--;
+ 	return;
+     }
+ 
      me->sp++;				/* Pop state off stack */
      
      switch(element_number) {
***************
*** 831,837 ****
  	exit (-99);
      }
  
!     me = (HTStructured*) malloc(sizeof(*me));
      if (me == NULL) outofmem(__FILE__, "HTML_new");
  
      if (!got_styles) get_styles();
--- 840,846 ----
  	exit (-99);
      }
  
!     me = (HTStructured*) calloc(1, sizeof(*me));
      if (me == NULL) outofmem(__FILE__, "HTML_new");
  
      if (!got_styles) get_styles();
