Public Report
Report From: Delphi-BCB/IDE    [ Add a report in this area ]  
Report #:  47609   Status: Closed
If Welcome Page is closed, IDE crashes when creating/opening a second project
Project:  Delphi Build #:  11.0.2902.10471
Version:    11.2 Submitted By:   Jordan Russell
Report Type:  Crash / Data loss / Total failure Date Reported:  6/15/2007 2:54:29 PM
Severity:    Infrequently encountered problem Last Updated: 9/9/2008 10:53:38 AM
Platform:    95, 98, 2000, NT, XP Internal Tracking #:   251556
Resolution: Fixed (Resolution Comments) Resolved in Build: : 12.0.3125.15435
Duplicate of:  None
Voting and Rating
Overall Rating: (2 Total Ratings)
5.00 out of 5
Total Votes: 22
Description
This bug is back in RAD Studio 2007 + Dec2007 Update.
It had apparently been fixed in the initial release of RAD Studio 2007, after first being introduced in Delphi 2007 Update 1.

If the Welcome page is closed* when the IDE is configured to use the classic undocked/non-embedded layout, the IDE crashes if you attempt to open or create more than one project in a single session.

*or disabled entirely by hacking startpageide100.bpl out of the registry.

------------------

[20E9DBFC]{vclide100.bpl} GDIPlus.GradientTabs.TGradientTabSet.GetTabList (Line 954, "gdiplus.gradienttabs.pas" + 0) + $0
[20D1972A]{designide100.bpl} DeskUtil.SetFocusHook (Line 435, "DeskUtil.pas" + 4) + $C
[20A58AEF]{coreide100.bpl} EditorBuffer.FindEditWindowAndView (Line 5753, "EditorBuffer.pas" + 8) + $20
[2004A49E]{rtl100.bpl  } Contnrs.TComponentList.GetItems (Line 380, "common\Contnrs.pas" + 1) + $4
[201D22F7]{vcl100.bpl  } AppEvnts.TMultiCaster.GetAppEvents (Line 602, "appevnts.pas" + 1) + $5
[20A58CC5]{coreide100.bpl} EditorBuffer.FindEditWindow (Line 5803, "EditorBuffer.pas" + 1) + $6
[0041A20E]{bds.exe     } AppMain.TAppBuilder.SearchCommandUpdate (Line 4176, "ui\AppMain.pas" + 1) + $2
[200401A7]{rtl100.bpl  } Classes.TBasicAction.Update (Line 11091, "common\Classes.pas" + 3) + $7
[201513B1]{vcl100.bpl  } ActnList.TContainedAction.Update (Line 395, "ActnList.pas" + 1) + $2C
[0041A692]{bds.exe     } AppMain.TAppBuilder.LoadMenu (Line 4299, "ui\AppMain.pas" + 8) + $10
[0041F8F6]{bds.exe     } AppMain.TAppBuilder.MenuBarPopup (Line 6387, "ui\AppMain.pas" + 12) + $21
[0041F911]{bds.exe     } AppMain.TAppBuilder.MenuBarPopup (Line 6389, "ui\AppMain.pas" + 14) + $9
[213291E7]{vclactnband100.bpl} ActnMenus.TCustomActionMenuBar.DoPopup (Line 1121, "ActnMenus.pas" + 2) + $C
[21328A3D]{vclactnband100.bpl} ActnMenus.TCustomActionMenuBar.CreatePopup (Line 917, "ActnMenus.pas" + 6) + $8
[21328E81]{vclactnband100.bpl} ActnMenus.TCustomActionMenuBar.DoItemClicked (Line 1024, "ActnMenus.pas" + 28) + $13
[21329B3E]{vclactnband100.bpl} ActnMenus.TCustomActionMenuBar.ProcessMenuLoop (Line 1388, "ActnMenus.pas" + 73) + $8
[21329BA6]{vclactnband100.bpl} ActnMenus.TCustomActionMenuBar.ProcessMenuLoop (Line 1404, "ActnMenus.pas" + 89) + $5
[21329FB4]{vclactnband100.bpl} ActnMenus.TCustomActionMenuBar.TrackMenu (Line 1534, "ActnMenus.pas" + 7) + $5
[2132A07F]{vclactnband100.bpl} ActnMenus.TCustomActionMenuBar.TrackMenu (Line 1547, "ActnMenus.pas" + 20) + $10
[2132D470]{vclactnband100.bpl} ActnMenus.TCustomActionMainMenuBar.TrackMenu (Line 3146, "ActnMenus.pas" + 3) + $3
[213288E5]{vclactnband100.bpl} ActnMenus.TCustomActionMenuBar.CMItemClicked (Line 878, "ActnMenus.pas" + 3) + $4
[2013C527]{vcl100.bpl  } Controls.TControl.WndProc (Line 5146, "Controls.pas" + 83) + $6
[20D1972A]{designide100.bpl} DeskUtil.SetFocusHook (Line 435, "DeskUtil.pas" + 4) + $C
[2013C1B4]{vcl100.bpl  } Controls.TControl.Perform (Line 5021, "Controls.pas" + 5) + $C
[2013FEC6]{vcl100.bpl  } Controls.GetControlAtPos (Line 7095, "Controls.pas" + 4) + $73
[2013FF8E]{vcl100.bpl  } Controls.TWinControl.ControlAtPos (Line 7118, "Controls.pas" + 13) + $E
[2013C1B4]{vcl100.bpl  } Controls.TControl.Perform (Line 5021, "Controls.pas" + 5) + $C
[201405A8]{vcl100.bpl  } Controls.TWinControl.WndProc (Line 7274, "Controls.pas" + 81) + $1D
[201406A7]{vcl100.bpl  } Controls.TWinControl.WndProc (Line 7304, "Controls.pas" + 111) + $6
[200EBAA8]{vcl100.bpl  } Graphics.FreeMemoryContexts (Line 5060, "Graphics.pas" + 12) + $5
[2013FDD0]{vcl100.bpl  } Controls.TWinControl.MainWndProc (Line 7073, "Controls.pas" + 3) + $6
[2013FDE5]{vcl100.bpl  } Controls.TWinControl.MainWndProc (Line 7076, "Controls.pas" + 6) + $0
[2132A13E]{vclactnband100.bpl} ActnMenus.TCustomActionMenuBar.WndProc (Line 1575, "ActnMenus.pas" + 23) + $4
[2013FDD0]{vcl100.bpl  } Controls.TWinControl.MainWndProc (Line 7073, "Controls.pas" + 3) + $6
[20040E4C]{rtl100.bpl  } Classes.StdWndProc (Line 11583, "common\Classes.pas" + 8) + $0
[201625F0]{vcl100.bpl  } Forms.TApplication.ProcessMessage (Line 8105, "Forms.pas" + 23) + $1
[2016262A]{vcl100.bpl  } Forms.TApplication.HandleMessage (Line 8124, "Forms.pas" + 1) + $4
[2016291F]{vcl100.bpl  } Forms.TApplication.Run (Line 8223, "Forms.pas" + 20) + $3
[0042297A]{bds.exe     } bds.bds (Line 195, "" + 7) + $7
Steps to Reproduce:
1. Select the "Classic Undocked" desktop layout.

2. Uncheck the "Embedded designer" option (under Tools | Options | Environment Options \ VCL Designer).

3. Close and restart the IDE so the changes take effect.

4. Close the "bds:/default.htm" window (the Welcome page).

5. Click File | New | VCL Forms Application - Delphi for Win32.

6. Click File | New | VCL Forms Application - Delphi for Win32 again.
   Notice that this time, the new project's form doesn't appear on the screen.

7. Click "Search" on the menu bar.

Result:
Access violation at address 20E9DBFC in module 'vclide100.bpl'. Read of address 00000258.

As far as I can tell, there is no way to get the IDE out of this state. It must be closed and restarted.


Note: This isn't limited to creating new projects. The same error occurs if you substitute steps 5 and 6 with File | Open Project.
Workarounds
None
Attachment
None
Comments

Jordan Russell at 12/23/2007 12:16:23 PM -
Text from original report targeting D2007 Update 1, for reference:


This is a newly introduced bug in Delphi 2007 Update 1.
It does *not* exist in the original release of Delphi 2007, or in Delphi 2006.

If the Welcome page is closed* when the IDE is configured to use the classic undocked/non-embedded layout, the IDE will get stuck in an error message loop if you attempt to open or create more than one project in a single session.

This is 100% reproducible on a fresh install of Windows (2000 or Vista) with a fresh install of Delphi 2007 Update 1.

*or disabled entirely by hacking startpageide100.bpl out of the registry.


=== Steps ===

1. Select the "Classic Undocked" desktop layout.

2. Uncheck the "Embedded designer" option (under Tools | Options | Environment Options \ VCL Designer).

3. Close and restart the IDE so the changes take effect.

4. Close the "bds:/default.htm" window (the Welcome page).

5. Click File | New | VCL Forms Application - Delphi for Win32.

6. Click File | New | VCL Forms Application - Delphi for Win32 again.

Error:  "List index out of bounds (0)"
(See Description for the backtrace.)

Clicking OK doesn't help; the message just returns.


Note: This isn't limited to creating new projects. The same error occurs if you substitute steps 7 and 8 with File | Open Project.

Server Response from: CODE1