Bug #45371 [Com]: SWFBitmap object can not be returned

From: Date: Wed, 24 Nov 2010 05:44:18 +0000
Subject: Bug #45371 [Com]: SWFBitmap object can not be returned
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-156340@lists.php.net to get a copy of this message
Edit report at http://bugs.php.net/bug.php?id=45371&edit=1

 ID:                 45371
 Comment by:         letmegetone at hotmail dot com
 Reported by:        letmegetone at hotmail dot com
 Summary:            SWFBitmap object can not be returned
 Status:             Closed
 Type:               Bug
 Package:            Ming related
 Operating System:   Windows XP SP3
 PHP Version:        4.4.8
 Block user comment: N
 Private report:     N

 New Comment:

I tested it,and found:
   $img=file_get_contents("1.jpg");
   $s = new SWFShape();
   $imgf = $s->addFill($img, SWFFILL_TILED_BITMAP);
   $s->setRightFill($imgf);
   $m->add($s);
   $m->output();
it works. But if I try to remove the data of string $img before ouput()
called
   $img="";
   $m->output();
it failed.
Is that means that all data resources the SWFMovie used should be keept
untill output() is done?


Previous Comments:
------------------------------------------------------------------------
[2008-07-07 00:28:48] letmegetone at hotmail dot com

$string=fread($fp,filesize($mfile));
The problem is not about SWFBitmap,but the $string.
It can not be changed by fread more than one time.

------------------------------------------------------------------------
[2008-06-27 05:08:14] letmegetone at hotmail dot com

I posted the completed CODES on a Chinese-based website:
http://club.phpe.net/index.php?act=ST&f=15&t=13441&s=

------------------------------------------------------------------------
[2008-06-27 05:02:59] letmegetone at hotmail dot com

Description:
------------
I want to put some worked codes into a function, in order to make my
main script shorter.
All other MING classes work well,such as SWFSprite,SWFShape, except
SWFBitmap.
I can get the error message from apache2:
 PHP Fatal error:  output() [<a
href='function.output'>function.output</a>]: Initial Jpeg marker not
found! 

It seems that the SWFBitmap object can not be returned in a function.

I tried test like this:
CODE I  + CODE III             :FAILED
CODE II + CODE IV              :WORKS
CODE I  + CODE II  + CODE III  : WORKS

Reproduce code:
---------------
function get_b()//CODE I
{
   $mfile="xx.jpg";   $fp=fopen($mfile,"r");
   $string=fread($fp,filesize($mfile));
   $b = new SWFBitmap($string);
   fclose($fp);
   return $b;
}
   $mfile="xx.jpg";   $fp=fopen($mfile,"r");//CODE II
   $string=fread($fp,filesize($mfile));
   $b = new SWFBitmap($string);
   fclose($fp);

   $s = new SWFShape();

   $scale= $s->addFill(get_b());         //CODE III
   $scale= $s->addFill($b);              //CODE IV

Expected result:
----------------
Can I put the code with the SWFBitmap object into a function?



------------------------------------------------------------------------



-- 
Edit this bug report at http://bugs.php.net/bug.php?id=45371&edit=1


Thread (4 messages)

« previous php.bugs (#156340) next »