Forum > General
IDE Behaviour: By Design? Or Unintended?
Aruna:
Hello everyone, I was highly impressed a long while back when I first started using the Lazarus IDE but recent events took things to a whole new level. I want to share what happened so someone more experienced and familiar with the IDE may be able to shed some light on what happened.
I have a project that compiles and runs fine. ( The same Custom Form Caption I was working on..) The source was in my home folder. At a later stage, I decided to move everything to my usual projects folder. I did this while the IDE was up and running. So, I move the folder and go back to the IDE, and guess what I see? Please have a look at the first screenshot. It told me 'some files have changed on disk' I was quite spooked.
When I checked the Project Inspector I was very pleasantly surprised to see the missing files identified and struck-through in red (The second screenshot shows this) I thought this was sweet and very nice. Who needs AI when the IDE seems to be able to track and think for itself :-) Absolutely amazing stuff whoever who was responsible for that code I bow to you :-)
I close the IDE. Start things up again and when I try to open the project from it's new folder. Lazarus chokes and drops to a shell. Please see below:
--- Code: Text [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---aruna@debian:~/lazarus3/lazarus$ ./lazarus --primary-config-path=~/.lazarus_testSetPrimaryConfigPath NewValue="~/.lazarus_test" expanded to "/home/aruna/.lazarus_test"Hint: (lazarus) [TMainIDE.ParseCmdLineOptions] PrimaryConfigPath="/home/aruna/.lazarus_test"Hint: (lazarus) [TMainIDE.ParseCmdLineOptions] SecondaryConfigPath="/etc/lazarus"TLResourceList.Sort 2 DUPLICATE RESOURCE FOUND: TDemo1:PNGTLResourceList.Sort 3 DUPLICATE RESOURCE FOUND: TDemo1:PNGTLResourceList.Sort 5 DUPLICATE RESOURCE FOUND: TDemo2:PNGTLResourceList.Sort 6 DUPLICATE RESOURCE FOUND: TDemo2:PNG (lazarus:6735): Gtk-CRITICAL **: 08:51:34.402: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed(lazarus:6735): Gtk-CRITICAL **: 08:51:34.471: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed(lazarus:6735): Gtk-CRITICAL **: 08:51:34.471: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed(lazarus:6735): Gtk-CRITICAL **: 08:51:34.472: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed(lazarus:6735): Gtk-CRITICAL **: 08:51:34.472: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed(lazarus:6735): Gtk-CRITICAL **: 08:51:34.472: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed(lazarus:6735): Gtk-CRITICAL **: 08:51:34.472: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed(lazarus:6735): Gtk-CRITICAL **: 08:51:34.472: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed(lazarus:6735): Gtk-CRITICAL **: 08:51:34.472: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed(lazarus:6735): Gtk-CRITICAL **: 08:51:34.472: IA__gtk_window_set_keep_above: assertion 'GTK_IS_WINDOW (window)' failed----------------Hint: (lazarus) [TMainIDE.DoOpenProjectFile] "/home/aruna/hold/custom Form/customForm.lpi"The program 'lazarus' received an X Window System error.This probably reflects a bug in the program.The error was 'BadWindow (invalid Window parameter)'. (Details: serial 19563 error_code 3 request_code 12 minor_code 0) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the --sync command line option to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.)aruna@debian:~/lazarus3/lazarus$ View So I think to myself " Aruna, you went and broke the IDE. Ah hell NO!' Nothing works, New Project chokes. Open Project chokes. View Example Projects chokes. All this drops me straight back into a shell. So I resorted to Open Recent Project and selected one of my initial projects and (phew) my IDE lives again.
Now comes the interesting part. If I try to open, compile, and run my project from its new folder things get tricky. I can compile and it starts to run but I see no active form like usual. We have no form but I see the red stop button on the IDE cool bar so I know it is running. ( So where is my form? ) I am still testing and investigating this and will report back anything of interest I may find.
dseligo:
You tried menu Run --> Clean up and Build?
Aruna:
--- Quote from: dseligo on September 06, 2024, 03:50:47 pm ---You tried menu Run --> Clean up and Build?
--- End quote ---
I can't get to that. It gives me the project wizard. Check the attached screenshot.
Aruna:
--- Quote from: dseligo on September 06, 2024, 03:50:47 pm ---You tried menu Run --> Clean up and Build?
--- End quote ---
I misunderstood you @dseligo yes of course if you do a clean build things work fine. I am trying to understand where did my form go? (without doing a clean build) It is running but where the heck is it?
Martin_fr:
--- Quote from: Aruna on September 06, 2024, 03:27:26 pm ---I close the IDE. Start things up again and when I try to open the project from it's new folder. Lazarus chokes and drops to a shell. Please see below:
--- End quote ---
The crash could be anchordocking. There have been some reports (partly fixed in 3.99) that when the IDE opens certain windows in certain circumstances, and anchordocking is installed, then crashes (of the kind "BadWindow " or similar) happen.
I don't have all the details on it.....
But likely the IDE was about to bring up some window with some info, and that may have just been prevented by above bug. Though, just a guess...
Navigation
[0] Message Index
[#] Next page