Kaydet (Commit) 42468f9f authored tarafından Caolán McNamara's avatar Caolán McNamara

pointer->reference

Change-Id: I9d76750d907968d54d5ab99304080a75452c0420
üst 31ebd9f4
...@@ -191,8 +191,7 @@ JPEGReader::JPEGReader( SvStream& rStream, void* /*pCallData*/, bool bSetLogSize ...@@ -191,8 +191,7 @@ JPEGReader::JPEGReader( SvStream& rStream, void* /*pCallData*/, bool bSetLogSize
JPEGReader::~JPEGReader() JPEGReader::~JPEGReader()
{ {
if( mpBuffer ) delete[] mpBuffer;
delete[] mpBuffer;
if( mpAcc ) if( mpAcc )
Bitmap::ReleaseAccess( mpAcc ); Bitmap::ReleaseAccess( mpAcc );
...@@ -201,16 +200,16 @@ JPEGReader::~JPEGReader() ...@@ -201,16 +200,16 @@ JPEGReader::~JPEGReader()
Bitmap::ReleaseAccess( mpAcc1 ); Bitmap::ReleaseAccess( mpAcc1 );
} }
unsigned char * JPEGReader::CreateBitmap( JPEGCreateBitmapParam * pParam ) unsigned char * JPEGReader::CreateBitmap(JPEGCreateBitmapParam& rParam)
{ {
if (pParam->nWidth > SAL_MAX_INT32 / 8 || pParam->nHeight > SAL_MAX_INT32 / 8) if (rParam.nWidth > SAL_MAX_INT32 / 8 || rParam.nHeight > SAL_MAX_INT32 / 8)
return NULL; // avoid overflows later return NULL; // avoid overflows later
if (pParam->nWidth == 0 || pParam->nHeight == 0) if (rParam.nWidth == 0 || rParam.nHeight == 0)
return NULL; return NULL;
Size aSize( pParam->nWidth, pParam->nHeight ); Size aSize(rParam.nWidth, rParam.nHeight );
bool bGray = pParam->bGray != 0; bool bGray = rParam.bGray != 0;
unsigned char * pBmpBuf = NULL; unsigned char * pBmpBuf = NULL;
...@@ -253,13 +252,13 @@ unsigned char * JPEGReader::CreateBitmap( JPEGCreateBitmapParam * pParam ) ...@@ -253,13 +252,13 @@ unsigned char * JPEGReader::CreateBitmap( JPEGCreateBitmapParam * pParam )
if ( mbSetLogSize ) if ( mbSetLogSize )
{ {
unsigned long nUnit = pParam->density_unit; unsigned long nUnit = rParam.density_unit;
if( ( ( 1 == nUnit ) || ( 2 == nUnit ) ) && pParam->X_density && pParam->Y_density ) if( ( ( 1 == nUnit ) || ( 2 == nUnit ) ) && rParam.X_density && rParam.Y_density )
{ {
Point aEmptyPoint; Point aEmptyPoint;
Fraction aFractX( 1, pParam->X_density ); Fraction aFractX( 1, rParam.X_density );
Fraction aFractY( 1, pParam->Y_density ); Fraction aFractY( 1, rParam.Y_density );
MapMode aMapMode( nUnit == 1 ? MAP_INCH : MAP_CM, aEmptyPoint, aFractX, aFractY ); MapMode aMapMode( nUnit == 1 ? MAP_INCH : MAP_CM, aEmptyPoint, aFractX, aFractY );
Size aPrefSize = OutputDevice::LogicToLogic( aSize, aMapMode, MAP_100TH_MM ); Size aPrefSize = OutputDevice::LogicToLogic( aSize, aMapMode, MAP_100TH_MM );
...@@ -280,14 +279,14 @@ unsigned char * JPEGReader::CreateBitmap( JPEGCreateBitmapParam * pParam ) ...@@ -280,14 +279,14 @@ unsigned char * JPEGReader::CreateBitmap( JPEGCreateBitmapParam * pParam )
) )
{ {
pBmpBuf = mpAcc->GetBuffer(); pBmpBuf = mpAcc->GetBuffer();
pParam->nAlignedWidth = mpAcc->GetScanlineSize(); rParam.nAlignedWidth = mpAcc->GetScanlineSize();
pParam->bTopDown = mpAcc->IsTopDown(); rParam.bTopDown = mpAcc->IsTopDown();
} }
else else
{ {
pParam->nAlignedWidth = AlignedWidth4Bytes( aSize.Width() * ( bGray ? 8 : 24 ) ); rParam.nAlignedWidth = AlignedWidth4Bytes( aSize.Width() * ( bGray ? 8 : 24 ) );
pParam->bTopDown = true; rParam.bTopDown = true;
pBmpBuf = mpBuffer = new unsigned char[pParam->nAlignedWidth * aSize.Height()]; pBmpBuf = mpBuffer = new unsigned char[rParam.nAlignedWidth * aSize.Height()];
} }
} }
......
...@@ -67,7 +67,7 @@ public: ...@@ -67,7 +67,7 @@ public:
virtual ~JPEGReader(); virtual ~JPEGReader();
ReadState Read( Graphic& rGraphic ); ReadState Read( Graphic& rGraphic );
unsigned char * CreateBitmap( JPEGCreateBitmapParam* param ); unsigned char * CreateBitmap( JPEGCreateBitmapParam& param );
}; };
#endif // INCLUDED_VCL_SOURCE_FILTER_JPEG_JPEGREADER_HXX #endif // INCLUDED_VCL_SOURCE_FILTER_JPEG_JPEGREADER_HXX
......
...@@ -154,7 +154,7 @@ void ReadJPEG( JPEGReader* pJPEGReader, void* pInputStream, long* pLines, ...@@ -154,7 +154,7 @@ void ReadJPEG( JPEGReader* pJPEGReader, void* pInputStream, long* pLines,
aCreateBitmapParam.X_density = cinfo.X_density; aCreateBitmapParam.X_density = cinfo.X_density;
aCreateBitmapParam.Y_density = cinfo.Y_density; aCreateBitmapParam.Y_density = cinfo.Y_density;
aCreateBitmapParam.bGray = long(cinfo.output_components == 1); aCreateBitmapParam.bGray = long(cinfo.output_components == 1);
pDIB = pJPEGReader->CreateBitmap( &aCreateBitmapParam ); pDIB = pJPEGReader->CreateBitmap(aCreateBitmapParam);
nAlignedWidth = aCreateBitmapParam.nAlignedWidth; nAlignedWidth = aCreateBitmapParam.nAlignedWidth;
aRangeLimit = cinfo.sample_range_limit; aRangeLimit = cinfo.sample_range_limit;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment