[w3m-dev 03632] cleanup (don't close connection of news server)
* file.c (loadSomething): remove UFclose nntp:,news: (loadFile): UFclose (loadGeneralFile): always UFclose * html.h (UFclose): only reset when ISclose ==0 * istream.c (ISclose): return int (ISfileno): flag IST_UNCLOSE * istream.h (ISclose): return int (IST_UNCLOSE): added * news.c (news_close): reset IST_UNCLOSE (news_open): set IST_UNCLOSE From: Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
This commit is contained in:
12
istream.c
12
istream.c
@@ -1,4 +1,4 @@
|
||||
/* $Id: istream.c,v 1.17 2003/01/10 16:58:31 ukai Exp $ */
|
||||
/* $Id: istream.c,v 1.18 2003/01/10 17:06:23 ukai Exp $ */
|
||||
#include "fm.h"
|
||||
#include "myctype.h"
|
||||
#include "istream.h"
|
||||
@@ -176,15 +176,17 @@ newEncodedStream(InputStream is, char encoding)
|
||||
return stream;
|
||||
}
|
||||
|
||||
void
|
||||
int
|
||||
ISclose(InputStream stream)
|
||||
{
|
||||
MySignalHandler(*prevtrap) ();
|
||||
if (stream == NULL || stream->base.close == NULL)
|
||||
return;
|
||||
if (stream == NULL || stream->base.close == NULL ||
|
||||
stream->base.type & IST_UNCLOSE)
|
||||
return -1;
|
||||
prevtrap = signal(SIGINT, SIG_IGN);
|
||||
stream->base.close(stream->base.handle);
|
||||
signal(SIGINT, prevtrap);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -336,7 +338,7 @@ ISfileno(InputStream stream)
|
||||
{
|
||||
if (stream == NULL)
|
||||
return -1;
|
||||
switch (IStype(stream)) {
|
||||
switch (IStype(stream) & ~IST_UNCLOSE) {
|
||||
case IST_BASIC:
|
||||
return *(int *)stream->base.handle;
|
||||
case IST_FILE:
|
||||
|
Reference in New Issue
Block a user