Code Red > AutoLISP (Vanilla / Visual)
Problem with entmod - Bug in AutoCAD?
Lupo76:
Hi,
I have been using this simple code for many years and it has always worked correctly.
However when used with an arc dimension, AutoCAD (various versions) crashes :-o
The same code with the same context works fine in BricsCAD
--- Code: ---(defun c:test ()
(setq ogg (car (entsel)))
(DeleteXdata "EMILISPCA" ogg)
)
(defun DeleteXdata (appname ent /)
(entmod (list (cons -1 ent)(list -3 (list appname))))
(princ)
)
--- End code ---
I attach a dwg file, the lsp file and a video showing the crash.
Can anyone help me understand or work around the problem?
Thank you!
Marc'Antonio Alessi:
"ARC_DIMENSION" has "ACAD" Xdata, maybe you need to remove only your Xdata "EMILISPCA"
--- Code: --- (-3
(
"ACAD"
(1000 . "DSTYLE")
(1002 . "{")
(1070 . 40)
(1040 . 50.0)
(1070 . 144)
(1040 . 1.0)
(1002 . "}")
)
(
"EMILISPCA"
(1000 . "TIPOOGG=QUOTEFERRO")
(1000 . "IDFERRO=DEFAULT_1")
(1000 . "UM_QUOTE=cm")
)
)
--- End code ---
Try an audit, the dwg has many errors:
--- Code: ---...
Name: AcDbBlockGripExpr(45E)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
Name: AcDbBlockGripExpr(45F)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
...
--- End code ---
Lupo76:
Hi Marc'Antonio,
I confirm that I only have to remove my "EMILISPCA" Xdata.
The AUDIT command finds no errors in my file which was made from scratch, so the presence of errors would be very strange:
--- Code: ---Comando: _AUDIT
Correggere qualsiasi errore trovato? [Ś/No] <N>: S
Verifica dell'intestazione
Verifica delle tabelle
Verifica delle entità della fase 1
Fase 1 1100 oggetti controllati
Verifica delle entità della fase 2
Fase 2 1100 oggetti controllati
Verifica dei blocchi
41 blocchi verificati
Verifica di AcDsRecords
Totale di 0 errori trovati: 0 corretti
Oggetti cancellati 0
Comando:
--- End code ---
Furthermore, the crash also occurs on a new empty file by creating a new ARC_DIMENSION object.
Marc'Antonio Alessi:
--- Quote from: Lupo76 on April 13, 2021, 11:41:40 AM ---...
The AUDIT command finds no errors in my file which was made from scratch, so the presence of errors would be very strange:
--- Code: ---Comando: _AUDIT
Correggere qualsiasi errore trovato? [Ś/No] <N>: S
Verifica dell'intestazione
Verifica delle tabelle
Verifica delle entità della fase 1
Fase 1 1100 oggetti controllati
Verifica delle entità della fase 2
Fase 2 1100 oggetti controllati
Verifica dei blocchi
41 blocchi verificati
Verifica di AcDsRecords
Totale di 0 errori trovati: 0 corretti
Oggetti cancellati 0
Comando:
--- End code ---
--- End quote ---
BricsCAD V20 on TEST CON ARCO2.dwg:
--- Code: ---: _audit
Fix any errors detected? [Yes/No] <No>:y
Name: AcDbBlockGripExpr(45E)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
Name: AcDbBlockGripExpr(45F)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
Name: AcDbBlockGripExpr(465)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
Name: AcDbBlockGripExpr(466)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
Name: AcDbBlockGripExpr(474)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
Name: AcDbBlockGripExpr(475)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
Name: AcDbBlockGripExpr(47C)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
Name: AcDbBlockGripExpr(47D)
Value: Double - 1.79769e+307
Validation: Invalid
Replaced by: Set to 0
Name: AcDbProxyObject(6A3)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6B3)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6B6)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6B7)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6B8)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6B9)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6BA)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6BF)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6C0)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6C1)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6C2)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(6C3)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6A0)
Name: AcDbProxyObject(708)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6D9)
Name: AcDbProxyObject(709)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6D9)
Name: AcDbProxyObject(707)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6D9)
Name: AcDbProxyObject(70A)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6D9)
Name: AcDbProxyObject(705)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6D9)
Name: AcDbProxyObject(704)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6D9)
Name: AcDbProxyObject(706)
Value: Owner Id (0)
Validation: Invalid
Replaced by: Set to AcDbProxyObject(6D9)
1116 objects audited
Total errors found during audit 27, fixed 27[code]
--- End code ---
Lupo76:
BricsCAD works correctly.
The problem is in AutoCAD... :-(
Navigation
[0] Message Index
[#] Next page
Go to full version