View Issue Details

IDProjectCategoryView StatusLast Update
0003803JEDI VCL00 JVCL Componentspublic2006-07-13 02:02
ReporterGreenAssigned Toobones 
PrioritynormalSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Product Version3.00 
Target VersionFixed in Version3.30 
Summary0003803: GetStoredValues disfunctional with aeoReportRelative option
DescriptionTJvCustomAppStorage.GetStoredValues used with TJvXMLStorage and aeoReportRelative option, does not return correct value list.

For example, if my JvXMLStorage contains two paths:
\F1\R1 and \F1\F1 and I use [aeoFolders,aeoReportRelative] with Path parameter set to \F1, only \R1 is returned. The issue is caused by the Strings.Delete(I) on line 2557 in the GetStoredValues method which deletes the root path from the list, but if a relative path with the same name exists in the result list, as in the sample, it should not be deleted. The Strings.Delete(I) should only execute for non-aeoReportRelative cases.
Additional InformationMy fix reads like this:
---
..
    if aeoReportRelative in Options then
      InternalGetStoredValues('', SearchPath, Strings, Options)
    else begin
      InternalGetStoredValues(OptimizePaths([Self.Path, SearchPath]) + PathDelim, SearchPath, Strings, Options);
      I := Strings.IndexOf(OptimizePaths([Self.Path, SearchPath]));
      if I > -1 then
        Strings.Delete(I);
    end;
..
---

i.e. just adding a begin-end to the else of the if
TagsNo tags attached.

Activities

obones

2006-07-13 02:02

administrator   ~0009796

This is now fixed in SVN

Issue History

Date Modified Username Field Change
2006-07-10 17:08 Green New Issue
2006-07-13 02:02 obones Status new => resolved
2006-07-13 02:02 obones Fixed in Version => Daily / SVN
2006-07-13 02:02 obones Resolution open => fixed
2006-07-13 02:02 obones Assigned To => obones
2006-07-13 02:02 obones Note Added: 0009796