These pages are written by only Japanese.
|
Namazu for hns による簡易全文検索です。 詳細は 詳細指定/ヘルプをご参照下さい。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||
PHP_NEW_EXTENSION(swfed, swfed.c swf_object.c swf_header.c bitstream.c, $ext_shared)更に、クラス内部データ取得ルーチンを分離 (異常系がいい加減…)
static swf_object_t *get_swf_object(zval *obj TSRMLS_DC) { zval *data, **tmp; swf_object_t *swf; int id, type; data = zend_read_property(Z_OBJCE_P(obj), obj, "swf_object", strlen("swf_object"),1 TSRMLS_CC); zend_hash_find(Z_OBJPROP_P(obj), "swfed", strlen("swfed") + 1, (void **)&tmp); id = Z_LVAL_PP(tmp); swf = zend_list_find(id, &type); return swf; }SWF ファイルの magic の型定義を作って、
typedef struct swf_header_ { unsigned char f_magic[4]; // 'FWS' or 'CWS' + '\0'; <略> }swf_object_input -> swf_header_input の流れと、
$obj = new SWFEditor(); $obj->input("CWS...."); $obj->swfInfo();実行結果
% php yoya_test.php input done magic: CWS SWFEditor->destoryとりあえず、とっかかりが出来ました。