not part of the build, bug 105959, add NPN_ReqestRead() support to tester plugin

git-svn-id: svn://10.0.0.236/trunk@117283 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
serge%netscape.com
2002-03-23 02:56:43 +00:00
parent e8ede28309
commit 092c84f62e
5 changed files with 73 additions and 1 deletions

View File

@@ -194,6 +194,9 @@ Return:
DWORD dwTickReturn = XP_GetTickCount();
pLogger->appendToLog(action_npp_new_stream, dwTickEnter, dwTickReturn, (DWORD)ret, (DWORD)instance,
(DWORD)type, (DWORD)stream, (DWORD)seekable, (DWORD)stype);
if (pPlugin->m_firstAction == action_npn_request_read && seekable) {
*stype = NP_SEEK;
}
return ret;
}
@@ -233,6 +236,13 @@ Return:
pLogger->appendToLog(action_npp_write, dwTickEnter, dwTickReturn, (DWORD)ret,
(DWORD)instance, (DWORD)stream,
(DWORD)offset, (DWORD)len, (DWORD)buffer);
if (pPlugin->m_firstAction == action_npn_request_read) {
if (stream->notifyData) {
NPByteRange* rangeList = (NPByteRange*) stream->notifyData;
NPN_RequestRead(stream, rangeList);
stream->notifyData = 0;
}
}
return ret;
}

View File

@@ -292,3 +292,31 @@ DWORD convertStringToNPPVariable1(DWORD * pdw1)
return dwRet;
}
NPByteRange * convertStringToNPByteRangeList(LPSTR szString)
{
NPByteRange **brNextFromPrev, *brList = 0;
if(szString) {
int offset = -1, len = -1;
char *p = szString;
while (EOF != sscanf((const char*)p, "%d-%d", &offset, &len)) {
if (offset == -1 || len == -1)
break;
NPByteRange *brCurr = new NPByteRange;
brCurr->offset = offset;
brCurr->length = len;
brCurr->next = 0;
if (!brList)
brList = brCurr;
else
*brNextFromPrev = brCurr;
brNextFromPrev = &brCurr->next;
if (!(p = strchr(p, ',')))
break;
while(*(++p) == ' '); // cut off white spaces
}
}
return brList;
}