summaryrefslogblamecommitdiff
path: root/src/user/lib/fwik/io/Node.cpp
blob: 1d8b7f50f557bb3c1f65416927b9eaa98d2d6eb3 (plain) (tree)






















                                               
#include <IO/Node.h>

Node::Node(FILE f) {
	fd = f;
	int i = libc::statf(f, &info);
	valid = (i == 0);
}

Node::Node(char* filename, int mode) {
	fd = libc::open(filename, mode);
	if (fd < 0) {
		valid = false;
	} else {
		int i = libc::statf(fd, &info);
		valid = (i == 0);
		if (!valid) libc::close(fd);
	}
}

void Node::close() {
	if (valid) libc::close(fd);
	valid = false;
}