The Delphi Bug List

Tools


The Delphi package comes with some small and not so small accompanying programs that may be generally referred to as 'tools'. Examples:
Image Editor
Database Desktop

The color codes indicate in which version(s) of Delphi the bug occurs and what its status is.
Latest update: 27 December 1998
Bug # Delphi versions Description
276 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02
There is a bug in KWGEN
275 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Borland Language Pack -
The database values for True and False are translated. This is VERY annoying if you try to use the value in an SQL string (which only accepts TRUE and FALSE). Confirmed only for Delphi 2
267 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Database Desktop -
Database Desktop creates a Paradox 4.0 table when instructed to create a 7.0 table.
463 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Database Desktop - Oracle 8
DBD allows you to create Oracle 8 tables (and indexes, and field names) with lowercase names. This is not allowed by Oracle.
468 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Database desktop -
Some of the buttons used in Database Desktop dialogs do not function properly.
268 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Image Editor -
Undocumented feature or bug? Delphi treats the color of the lower left pixel of a bitmap as the background color
269 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Image Editor -
The PaintCan has its hotspot somewhere near the upper right, I am not sure where.
270 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Image Editor -
The Eraser does not change the tool cursor when selected.
271 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Image Editor -
When you use Resource|New... the window that opens is somewhere in the far lower right corner, UNLESS you are operating at full screen.
272 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Image Editor -
The check for 'mouse over tool button' apparently misses the bottom part of the button, you have to select a button above the lower quarter (about) of the button image.
273 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Image Editor -
Eye-dropper
274 1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02 Image Editor -

Bug #276; last modified: before April 1998
1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02
Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown

There is a bug in KWGEN

Description
Description and solution have been confirmed independently

There is a bug with KWGEN. If you TYPE the path to your file in the project box, it will fail with a TStream error

Solution / workaround
If you use the BROWSE button to select the file it works great.

Bug #275; last modified: before April 1998
1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02
Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Borland Language Pack

The database values for True and False are translated. This is VERY annoying if you try to use the value in an SQL string (which only accepts TRUE and FALSE). Confirmed only for Delphi 2

Description
Solution / workaround
To undo the translation, correct the values of stringtable entries 62509/62510 in DBConsts.Res in the Delphi 2.0\Lib directory with a resource editor and rebuild the library.
You can also change these values for every language by editing all DBConst.Res files in the Delphi 2.0\Localize\XX directories (where XX specifies the language).

Bug #267; last modified: before April 1998
1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02
Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Database Desktop

Database Desktop creates a Paradox 4.0 table when instructed to create a 7.0 table.

Description
Reported by Sandro Stefano de Almeida Fernandes
Implications: A 4.0 Paradox table can't be indexed with the Descending or Unique attributes (these attributes don't apply either to Paradox 5.0 for windows)
This is particularly nasty if the application creates an index at run time. An ugly exception arises with a message something like this: "Operation needs a Higher level table".
Solution / workaround
Just launch the Database Desktop and use Table, Restructure and create / modify any index with the Unique or Descending attributes. When you try to save the modifications the Database Desktop presents a Dialogue to upgrade the table.
Additional comment
What version exactly is created by the DBD probably depends on the structure of the table. I created a (Paradox 7) table with just one field of type TimeStamp. After saving, closing and opening, the DBD found that this was a Paradox 5 table. Applying the workaround indeed turned it into a Paradox 7 table.

Bug #463; last modified: 18-Aug-98
1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02
Unknown Unknown Unknown Unknown Unknown Exists Exists Unknown
Database Desktop - Oracle 8

DBD allows you to create Oracle 8 tables (and indexes, and field names) with lowercase names. This is not allowed by Oracle.

Description
Reported by Eli Dickinson
Independent confirmation would be appreciated

You can get some interesting results when you try to work with such a table: in SQLplus the table exists as a table but when you try to reference it, "object does not exist".
DBD lets you see the table but you can't restructure a table with a lowercase name.
The table can only be dropped from Delete Table in DBD

Opening the repository table as Sys and changing the name to all capitals makes the table functional.
I suspect this problem is because the BDE is adding the table by editing the repository rather than using create table. This is OK, it's probably faster, BUT, the data is not checked for case.


Bug #468; last modified: 27-Dec-98
1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02
Unknown Unknown Unknown Unknown Exists Exists Exists Exists
Database desktop

Some of the buttons used in Database Desktop dialogs do not function properly.

Description
Reported by Jim Rofkar; checked by Reinier Sterkenburg
Specifically, all the custom control buttons with the class name "JrBtnll32" do not automatically depress when you press and hold the mouse over them, then move the mouse off of them. The button remains in a "pressed" state. The buttons should bounce back and not force a click event when the mouse leaves the button rect.

To reproduce:

  1. Start Delphi.
  2. Start the Database Desktop tool by selecting "Database Desktop" from Delphi's "Tools" menu.
  3. Open a database table into Database Desktop.
  4. Select the "Info Structure..." menu item from the "Table" menu.
  5. Press and hold the mouse button over the "Done" button in the "Structure Information" dialog.
  6. Finally, while holding the mouse down, move the cursor off the "Done" button.
Notice:
The "Done" button remains in the "down" position.

Cause:
I believe the custom control "JrBtnll32" buttons are not using the SetCapture WinAPI function properly, which would avoid this problem.

I have verified this using Delphi 3.02 with Database Desktop version 7.0 under Windows NT 4.0 with Service Pack 3 installed.

Note:
This is an extremely low-priority bug, but an annoyance, nonetheless.


Bug #268; last modified: before April 1998
1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02
Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Image Editor

Undocumented feature or bug? Delphi treats the color of the lower left pixel of a bitmap as the background color

Description
Reported by Thomas Hill
Comment by Kirk <kroma@worldnet.att.net>:
In the Delphi Library Reference Help (vcl.hlp) in the section Glyph property, this is noted:
Note: The lower left hand pixel of the bitmap is reserved for the "transparent" color. Any pixel in the bitmap which matches that lower left hand pixel will be "transparent".

Bug #273; last modified: before April 1998
1.02 2.01 3.0 3.01 3.02 4.0 4.01 4.02
Unknown Unknown Unknown Unknown Unknown Unknown Unknown Unknown
Image Editor

Eye-dropper

Description
Reported by Thomas Hill
Image Editor eye-dropper picks up color (in 256 color bitmap) and displays the color correctly in the color box but when you try to use the new color, Image Editor incorrectly uses some other color (not either of the ones in the color boxes)!

Index page
The Delphi Bug Lists are maintained by Reinier Sterkenburg, with help from the DeBug Team.
All feedback is appreciated. See also the feedback section of the Delphi Bug List home page.