Bug 449219 - [Pascal] code importing wizard crash
Summary: [Pascal] code importing wizard crash
Status: RESOLVED FIXED
Alias: None
Product: umbrello
Classification: Applications
Component: importer (show other bugs)
Version: 2.32.0 (KDE releases 20.08.0)
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: Umbrello Development Group
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-01-26 21:58 UTC by Jessica
Modified: 2022-01-30 21:32 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 2.33.80 (KDE releases 22.03.80)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jessica 2022-01-26 21:58:19 UTC
Hi

When trying to import pascal files from this source code: https://emuloader.mameworld.info/files/el888-src.rar
Umbrello crashes on several files.

I'm using latest available windows version here 
https://download.kde.org/stable/umbrello/latest/win64/umbrello-mingw64-2.32.0-126.1-setup.exe

Where can I download version 2.33 of Umbrello for Windows?
The latest windows version is 2.32.0 and there is no version 2.33 available...

STEPS TO REPRODUCE
1.  Extract  https://emuloader.mameworld.info/files/el888-src.rar
2.  Open the code importing wizard and select Pascal language
3.  Click to import all the Pascal files

I can't give a backtrace  because the program says it's not available.



OBSERVED RESULT

The program crashes on several Pascal files.

EXPECTED RESULT

The program should import all Pascal files.

SOFTWARE/OS VERSIONS

Windows: Microsoft Windows [Version 10.0.19044.1466]

KDE Development Platform 4.14.65


ADDITIONAL INFORMATION

I would like to test a more recent windows version but it's not available for download.
Comment 1 Jessica 2022-01-27 22:08:47 UTC
The files that make umbrello crash are:

Controls.pas
SevenZip.pas
ShellCtrls.pas
system.pas

All other files from the RAR archive are imported without crashing.
Comment 2 Oliver Kellogg 2022-01-28 06:35:53 UTC
Example of crash (this one apparently on RichEdit.pas) :
(gdb) bt
#0  0x0000000000472384 in QWeakPointer<QObject>::internalData (this=0x38) at /usr/include/qt5/QtCore/qsharedpointer_impl.h:698
#1  0x00000000006387bc in QPointer<UMLStereotype>::data (this=0x38) at /usr/include/qt5/QtCore/qpointer.h:77
#2  0x000000000063866c in QPointer<UMLStereotype>::operator UMLStereotype* (this=0x38) at /usr/include/qt5/QtCore/qpointer.h:83
#3  0x0000000000631f5f in UMLObject::stereotype (this=0x0, includeAdornments=false)
    at /umbrello-master/umbrello/umlmodel/umlobject.cpp:557
#4  0x0000000000631e49 in UMLObject::setStereotype (this=0x0, name="property")
    at /umbrello-master/umbrello/umlmodel/umlobject.cpp:526
#5  0x00000000007a318c in PascalImport::parseStmt (this=0x181ae10) at /umbrello-master/umbrello/codeimport/pascalimport.cpp:436
#6  0x000000000079ea29 in NativeImportBase::parseFile (this=0x181ae10,
    filename="/home/okellogg/umbrello/bug449219-pascalimport-el888-source/SevenZip.pas")
    at /umbrello-master/umbrello/codeimport/nativeimportbase.cpp:486
#7  0x000000000078ad59 in ClassImport::importFile (this=0x181ae10,
    fileName="/home/okellogg/umbrello/bug449219-pascalimport-el888-source/SevenZip.pas")
    at /umbrello-master/umbrello/codeimport/classimport.cpp:115
#8  0x000000000050e17f in CodeImpThread::run (this=0x1594320) at /umbrello-master/umbrello/codeimpwizard/codeimpthread.cpp:48
#9  0x000000000050ba24 in CodeImpStatusPage::importCodeFile (this=0x7fffec008360, noError=true)
    at /umbrello-master/umbrello/codeimpwizard/codeimpstatuspage.cpp:178

As an aside, on Buttons.pas there are lots of errors such as
umbrello: "CreatePropertySheetPage" : expecting '=' at  "("
umbrello: "stdcall" : expecting '=' at  ";"
umbrello: "CreatePropertySheetPageA" : expecting '=' at  "("
umbrello: "stdcall" : expecting '=' at  ";"
umbrello: "CreatePropertySheetPageW" : expecting '=' at  "("
umbrello: "stdcall" : expecting '=' at  ";"
umbrello: "DestroyPropertySheetPage" : expecting '=' at  "("
umbrello: "stdcall" : expecting '=' at  ";"
umbrello: "PropertySheet" : expecting '=' at  "("
umbrello: "stdcall" : expecting '=' at  ";"
umbrello: "PropertySheetA" : expecting '=' at  "("
umbrello: "stdcall" : expecting '=' at  ";"
umbrello: "PropertySheetW" : expecting '=' at  "("
umbrello: "stdcall" : expecting '=' at  ";"
umbrello: "dwICC" : expecting '=' at  ":"
Comment 3 Jessica 2022-01-28 16:37:15 UTC
Thank you so much for this wonderful program!

May I ask where the github of umbrello is?
Where is the correct place to ask feature requests or ask questions about the current features?

Thanks
Comment 4 Oliver Kellogg 2022-01-29 20:37:01 UTC
(In reply to Jessica from comment #3)
> [...]
> May I ask where the github of umbrello is?

https://invent.kde.org/sdk/umbrello

> Where is the correct place to ask feature requests or ask questions about
> the current features?

For feature requests it's right here.
For usage questions it's the user mailing list, https://mail.kde.org/mailman/listinfo/umbrello
For design/implementation level matters it's the devel mailing list, https://mail.kde.org/mailman/listinfo/umbrello-devel