Ticket #1687 (closed defect: fixed)

Opened 6 years ago

Last modified 6 years ago

SDTS driver and others do not record their datasource names

Reported by: ajolma Owned by: mloskot
Priority: normal Milestone: 1.4.3
Component: OGR_SF Version: unspecified
Severity: normal Keywords:
Cc: warmerdam

Description

This is essentially the same as #1674 (now fixed). This problem are probably in UK .NTF, SDTS, S57, VRT, AVCBin, REC, CSV, GML, KML and OGDI (and possibly others) as they all segfault in this code

my $driver = Geo::OGR::GetDriver($i);
$datasource = $driver->CreateDataSource('.');

Change History

Changed 6 years ago by warmerdam

  • cc warmerdam added
  • owner changed from warmerdam to mloskot
  • component changed from default to OGR_SF
  • milestone set to 1.4.3

Mateusz,

Can you pursue this after 1.4.2 is in the can?

Changed 6 years ago by mloskot

  • status changed from new to assigned

Changed 6 years ago by mloskot

Ari,

Could you give more complete test case I could see in action?

SDTS driver does not support creation of data source, so your 2-lines sample throws:

RuntimeError CreateDataSource() not supported by this driver.

if called using SDTS driver.

Changed 6 years ago by ajolma

  • status changed from assigned to closed
  • resolution set to fixed

This seems to be fixed already (in #1674?). I tried:

use Geo::GDAL;
for (0 .. Geo::OGR::GetDriverCount()-1) {
    my $driver = Geo::OGR::GetDriver($_);
    print $driver->GetName," ",$driver->TestCapability($Geo::OGR::ODrCCreateDataSource),"\n";
    next unless $driver->TestCapability($Geo::OGR::ODrCCreateDataSource);
    next if $driver->GetName eq 'PostgreSQL';
    $datasource = $driver->CreateDataSource("$_");
}

and I don't see any problems (other than PostgreSQL reporting that it supports DataSource? creation when it seems not to).

Note: See TracTickets for help on using tickets.