Ticket #1947 (closed defect: fixed)

Opened 4 months ago

Last modified 4 months ago

Atil Raster Provider doesn't work on Linux

Reported by: wuma Owned by: wuma
Priority: high Milestone: 2.4
Component: Server Version:
Severity: major Keywords:
Cc: External ID: 1443634

Description

It's reported by Autodesk QA: The Raster File Provider implemented based on Autodesk ATIL library cannot render map image. Steps to recreate: 1. Create one connection to Raster data 2. Create one layer. 3. Refresh the layer

Results: Nothing displays.

Expected results: The layer should display correctly.

Attachments

raster_linux.patch Download (0.8 KB) - added by wuma 4 months ago.

Change History

Changed 4 months ago by wuma

Changed 4 months ago by wuma

It's because the dynamic_cast<> failed at below location:

\Server\src\Services\Feature\ServerFeatureUtil.cpp#569 (Method: MgByteReader* MgServerFeatureUtil::GetRaster)

if (type == FdoStreamReaderType_Byte)
{
    FdoPtr<FdoIStreamReaderTmpl<FdoByte> > byteStreamReader =
==> FDO_SAFE_ADDREF(dynamic_cast<FdoIStreamReaderTmpl<FdoByte>*>((FdoIStreamReader*)streamReader));
    CHECKNULL((FdoIStreamReaderTmpl<FdoByte>*)byteStreamReader, L"MgServerFeatureUtil.GetRaster");

    ByteSourceRasterStreamImpl* rasterStream = new ByteSourceRasterStreamImpl(byteStreamReader);
    Ptr<MgByteSource> byteSource = new MgByteSource(rasterStream);
    byteSource->SetMimeType(MgMimeType::Binary);
    byteReader = byteSource->GetReader();
}

Replace dynamic_cast with static_cast will fix this problem.

Changed 4 months ago by wuma

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

r6481 to adsk/2.4j branch. r6482 to trunk.

Note: See TracTickets for help on using tickets.