summaryrefslogtreecommitdiffstats
path: root/src/aig/gia/giaAiger.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/aig/gia/giaAiger.c')
-rw-r--r--src/aig/gia/giaAiger.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/aig/gia/giaAiger.c b/src/aig/gia/giaAiger.c
index f304c644..0873602d 100644
--- a/src/aig/gia/giaAiger.c
+++ b/src/aig/gia/giaAiger.c
@@ -1056,7 +1056,7 @@ Gia_Man_t * Gia_ReadAigerFromMemory( char * pContents, int nFileSize, int fSkipS
Vec_IntFreeP( &vPoTypes );
}
- if ( Gia_ManHasDangling(pNew) )
+ if ( !fSkipStrash && Gia_ManHasDangling(pNew) )
{
Tim_Man_t * pManTime;
Vec_Int_t * vFlopMap, * vGateMap, * vObjMap;
@@ -1073,6 +1073,11 @@ Gia_Man_t * Gia_ReadAigerFromMemory( char * pContents, int nFileSize, int fSkipS
pNew->vObjClasses = vObjMap;
pNew->pManTime = pManTime;
}
+ if ( pNew->pManTime )
+ {
+ pNew = Gia_ManDupUnnomalize( pTemp = pNew );
+ Gia_ManStop( pTemp );
+ }
return pNew;
}
@@ -1395,7 +1400,7 @@ void Gia_WriteAiger( Gia_Man_t * pInit, char * pFileName, int fWriteSymbols, int
Tim_Man_t * pManTime;
pManTime = pInit->pManTime; pInit->pManTime = NULL;
// printf( "Gia_WriteAiger(): Normalizing AIG for writing.\n" );
- p = Gia_ManDupNormalized( pInit );
+ p = Gia_ManDupNormalize( pInit );
p->pManTime = pManTime;
}
else