Sha256: d0ded49bd39ef5eee7ae40f87048b53dd92abed11fa2df2ecd00557d34a1c27a

Contents?: true

Size: 972 Bytes

Versions: 6

Compression:

Stored size: 972 Bytes

Contents

#include <libxslt/extensions.h>
#include <libxslt/xsltutils.h>
#include <libxml/xpathInternals.h>
#include "base64.h"
#include <cstring>

void swft_addFileName( xmlNodePtr node, const char *filename ) {
	char *name, *n;
	const char *basename, *b;
	int l;
	
	// figure basename (filename without path)
	b = strrchr( filename, '/' );
	basename = b ? b+1 : filename;
	
	l = strlen(basename);
	name = new char[l + 1];
	strncpy( name, basename, l + 1 ); // copy string including null terminator
	
	// separate extension (set position of last . as end of string)
	n = strrchr( name, '.' );
	if( n ) n[0]=0;
	
	xmlSetProp( node, (const xmlChar *)"name", (const xmlChar *)name );
	
	delete[] name;
}

void swft_addData( xmlNodePtr node, char *data, int sz ) {
	char *tmpstr = new char[ (sz * 3) ];
	
	int l = base64_encode( tmpstr, data, sz );
	if( l > 0 ) {
		tmpstr[l] = 0;
		xmlNewTextChild( node, NULL, (const xmlChar *)"data", (const xmlChar *)tmpstr );
	}
	delete tmpstr;
}

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
swfmill-0.0.6 ext/swfmill/src/swft/swft_import.cpp
swfmill-0.0.5 ext/swfmill/src/swft/swft_import.cpp
swfmill-0.0.4 ext/swfmill/src/swft/swft_import.cpp
swfmill-0.0.3 ext/swfmill/src/swft/swft_import.cpp
swfmill-0.0.2 ext/swfmill/src/swft/swft_import.cpp
swfmill-0.0.1 ext/swfmill/src/swft/swft_import.cpp