]> git.lizzy.rs Git - plan9front.git/blob - sys/src/libstdio/sopenw.c
/sys/lib/kbmap: update 0xf860 to Kshift value, fix fake shifts on esc1
[plan9front.git] / sys / src / libstdio / sopenw.c
1 /*
2  * pANS stdio -- sopenw
3  */
4 #include "iolib.h"
5 FILE *sopenw(void){
6         FILE *f;
7         qlock(&_stdiolk);
8         for(f=_IO_stream;f!=&_IO_stream[FOPEN_MAX];f++) if(f->state==CLOSED) break;
9         if(f==&_IO_stream[FOPEN_MAX]) {
10                 qunlock(&_stdiolk);
11                 return NULL;
12         }
13         f->buf=f->rp=f->wp=0;
14         f->state=OPEN;
15         f->flags=STRING;
16         f->fd=-1;
17         qunlock(&_stdiolk);
18         return f;
19 }