View | Details | Raw Unified | Return to issue 62118
Collapse All | Expand All

(-)dmake/dmake.c (-2 / +11 lines)
Lines 650-656 Link Here
650
650
651
651
652
PUBLIC FILE *
652
PUBLIC FILE *
653
TryFiles(lp)
653
TryFiles(lp)/*
654
==============
655
   Try to open a makefile, try to make it if needed and return a
656
   filepointer to the first successful found or generated file.
657
   The function returns NIL(FILE) if nothing was found. */
654
LINKPTR lp;
658
LINKPTR lp;
655
{
659
{
656
   FILE *mkfil = NIL(FILE);
660
   FILE *mkfil = NIL(FILE);
Lines 672-679 Link Here
672
	 mkfil = Openfile( lp->cl_prq->CE_NAME, FALSE, FALSE );
676
	 mkfil = Openfile( lp->cl_prq->CE_NAME, FALSE, FALSE );
673
677
674
	 if( mkfil == NIL(FILE) &&
678
	 if( mkfil == NIL(FILE) &&
675
	     Make(lp->cl_prq, NIL(CELL)) != -1 )
679
	     Make(lp->cl_prq, NIL(CELL)) != -1 ) {
676
	    mkfil = Openfile( lp->cl_prq->CE_NAME, FALSE, FALSE );
680
	    mkfil = Openfile( lp->cl_prq->CE_NAME, FALSE, FALSE );
681
	    /* Clean the F_VISITED flag after making the target as this
682
	     * can conflict with the circular dependency check in rulparse(),
683
	     * see issue 62118 for details. */
684
	    lp->cl_prq->ce_flag &= ~(F_VISITED);
685
	 }
677
      }
686
      }
678
687
679
      Trace = s_n;
688
      Trace = s_n;

Return to issue 62118