Skip to content
Snippets Groups Projects
Commit 7188ca0b authored by rswindell's avatar rswindell
Browse files

Fixed null pointer dereferences when accessing properites of unopen file.

parent f3d127c7
No related branches found
No related tags found
No related merge requests found
......@@ -668,13 +668,22 @@ static JSBool js_file_get(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
*vp = BOOLEAN_TO_JSVAL(p->fp!=NULL);
break;
case FILE_PROP_EOF:
*vp = BOOLEAN_TO_JSVAL(feof(p->fp)!=0);
if(p->fp)
*vp = BOOLEAN_TO_JSVAL(feof(p->fp)!=0);
else
*vp = BOOLEAN_TO_JSVAL(JS_TRUE);
break;
case FILE_PROP_ERROR:
*vp = INT_TO_JSVAL(ferror(p->fp));
if(p->fp)
*vp = INT_TO_JSVAL(ferror(p->fp));
else
*vp = INT_TO_JSVAL(0);
break;
case FILE_PROP_POSITION:
*vp = INT_TO_JSVAL(ftell(p->fp));
if(p->fp)
*vp = INT_TO_JSVAL(ftell(p->fp));
else
*vp = INT_TO_JSVAL(-1);
break;
case FILE_PROP_LENGTH:
if(p->fp) /* open? */
......@@ -689,7 +698,10 @@ static JSBool js_file_get(JSContext *cx, JSObject *obj, jsval id, jsval *vp)
*vp = INT_TO_JSVAL(p->debug);
break;
case FILE_PROP_DESCRIPTOR:
*vp = INT_TO_JSVAL(fileno(p->fp));
if(p->fp)
*vp = INT_TO_JSVAL(fileno(p->fp));
else
*vp = INT_TO_JSVAL(-1);
break;
case FILE_PROP_ETX:
*vp = INT_TO_JSVAL(p->etx);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment