View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0005180 | JEDI VCL | 00 JVCL Components | public | 2010-02-24 17:16 | 2011-06-10 16:09 |
Reporter | jkelley | Assigned To | AHUser | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | 3.39 | ||||
Target Version | Fixed in Version | 3.40 | |||
Summary | 0005180: TJvAppRegistryStorage.ReadDateTime is not very robust | ||||
Description | If configured to store DateTime values as strings, then ReadDateTime will fall back to reading a float value if converting the string value to a DateTime fails. However, from what I can tell in testing, TJvAppRegistryStorage.DoReadFloat will successfully read from a string registry entry as long as the string is no more than 4 characters in size. As a result, TJvAppRegistryStorage.ReadDateTime will read corrupted or truncated string-formatted DateTime values, returning incorrect results, as long as the values are no more than 4 characters long. | ||||
Tags | No tags attached. | ||||
|
Did you have a better suggestion? |
|
It would make sense to me for TJvAppRegistryStorage.DoReadFloat to require that the registry value be a REG_BINARY that's exactly SizeOf(Extended) bytes long. That's the format created by TJvAppRegistryStorage.DoWriteFloat, so it should be safe. I'm really not familiar with TJvAppRegistryStorage - I came across this issue with ReadDateTime while trying to diagnose an error being raised by TJvProgramVersionCheck, which uses TJvAppStorage - so this suggestion may have problems that I'm not aware of. |
|
Having the zipped sources of a sample application showing this would help greatly |
|
Fixed in SVN. DoReadFloat now only accepts REG_BINARY as datatype |
Date Modified | Username | Field | Change |
---|---|---|---|
2010-02-24 17:16 | jkelley | New Issue | |
2010-02-24 21:54 | jfudickar | Note Added: 0017216 | |
2010-02-24 22:12 | jkelley | Note Added: 0017217 | |
2010-03-09 11:03 | obones | Note Added: 0017271 | |
2010-03-09 11:03 | obones | Status | new => feedback |
2010-04-02 14:23 | AHUser | Note Added: 0017351 | |
2010-04-02 14:23 | AHUser | Status | feedback => resolved |
2010-04-02 14:23 | AHUser | Fixed in Version | => Daily / SVN |
2010-04-02 14:23 | AHUser | Resolution | open => fixed |
2010-04-02 14:23 | AHUser | Assigned To | => AHUser |
2011-06-10 16:09 | obones | Fixed in Version | Daily / SVN => 3.40 |