summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2003-08-28 22:04:11 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2003-08-28 22:04:11 +0000
commit094b65cd0d38a0e13f1a7cd5deb5f7ddbbfaf3c2 (patch)
tree221b8ba060705a0da78d2cbf1ea0a71ab9de415b
parent3ce4ce9653fa2d5e68a7800a8943a9d2ace15bba (diff)
downloadnetsurf-094b65cd0d38a0e13f1a7cd5deb5f7ddbbfaf3c2.tar.gz
netsurf-094b65cd0d38a0e13f1a7cd5deb5f7ddbbfaf3c2.tar.bz2
[project @ 2003-08-28 22:04:11 by jmb]
Support ActiveX Flash objects svn path=/import/netsurf/; revision=257
-rw-r--r--render/box.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/render/box.c b/render/box.c
index 0f9938f14..41f886e19 100644
--- a/render/box.c
+++ b/render/box.c
@@ -1749,6 +1749,8 @@ struct result box_iframe(xmlNode *n, struct status *status,
bool plugin_decode(struct content* content, char* url, struct box* box,
struct object_params* po)
{
+ struct plugin_params * pp;
+
/* Set basehref */
po->basehref = strdup(content->url);
@@ -1772,8 +1774,19 @@ bool plugin_decode(struct content* content, char* url, struct box* box,
}
if(po->data == 0 && po->classid != 0) {
if(strncasecmp(po->classid, "clsid:", 6) == 0) {
- LOG(("ActiveX object - n0"));
- return false;
+ /* Flash */
+ if(strcasecmp(po->classid, "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000") == 0) {
+ for(pp = po->params; pp != 0 &&
+ (strcasecmp(pp->name, "movie") != 0);
+ pp = pp->next);
+ if(pp != 0)
+ url = url_join(pp->value, po->basehref);
+ else return false;
+ }
+ else {
+ LOG(("ActiveX object - n0"));
+ return false;
+ }
}
else {
url = url_join(po->classid, po->codebase);