--- parser3/src/main/pa_common.C 2001/03/20 17:52:39 1.19.2.2 +++ parser3/src/main/pa_common.C 2001/03/23 13:08:10 1.22 @@ -5,19 +5,16 @@ Author: Alexander Petrosyan (http://design.ru/paf) - $Id: pa_common.C,v 1.19.2.2 2001/03/20 17:52:39 paf Exp $ + $Id: pa_common.C,v 1.22 2001/03/23 13:08:10 paf Exp $ */ -#ifdef HAVE_CONFIG_H -# include "pa_config.h" -#endif +#include "pa_config_includes.h" #include -#include #include #include #include -#include +#include #include "pa_common.h" #include "pa_types.h" @@ -28,7 +25,7 @@ #include "pa_hash.h" #include "pa_string.h" -#ifdef WIN32 +#if _MSC_VER int __vsnprintf(char *b, size_t s, const char *f, va_list l) { int r=_vsnprintf(b, --s, f, l); @@ -46,35 +43,6 @@ int __snprintf(char *b, size_t s, const #endif -#ifdef WIN32 - -void flock(int fd, int operation) { - lseek(fd, 0, SEEK_SET); - while(_locking(fd, operation, 1)!=0); - lseek(fd, 0, SEEK_SET); -} - -#endif - -/// @todo define it -//\#ifdef SUN -#ifndef WIN32 - -void flock(int fd, int operation) { - lseek(fd, 0, SEEK_SET); - lockf(fd, operation, 1); - lseek(fd, 0, SEEK_SET); -} -#endif - -void lock(FILE *f, long position) { - flock(fileno(f), LOCK_EX); -} -void unlock(FILE *f) { - flock(fileno(f), LOCK_UN); -} - - char *file_read_text(Pool& pool, const char *fname, bool fail_on_read_problem) { int f; struct stat finfo; @@ -98,15 +66,15 @@ char *file_read_text(Pool& pool, const c if(fail_on_read_problem) PTHROW(0,0, 0, - "use: can not read '%s' file", fname); + "can not read '%s' file", fname); return 0; } void file_write(Pool& pool, const char *fname, const char *data, size_t size, - bool as_text, - bool exclusive) { + bool as_text/*, + bool exclusive*/) { if(fname) { int f; if(access(fname, F_OK)!=0) {/*no*/ @@ -119,19 +87,17 @@ void file_write(Pool& pool, |O_TRUNC #endif ; -#ifdef WIN32 mode|=as_text?_O_TEXT:_O_BINARY; -#endif if((f=open(fname,mode,0666))>=0) { - if(exclusive) - flock(f, LOCK_EX); + /*if(exclusive) + flock(f, LOCK_EX);*/ if(size) write(f,data,size); #ifndef WIN32 ftruncate(f,size); #endif - if(exclusive) - flock(f, LOCK_UN); + /*if(exclusive) + flock(f, LOCK_UN);*/ close(f); return; } @@ -272,16 +238,16 @@ static void append_attribute_subattribut string->append(static_cast(avalue)->as_string(), String::UL_HEADER, true); } -const String& attributed_meaning_string(Value *meaning) { - String &result=*new(meaning->pool()) String(meaning->pool()); - if(Hash *hash=meaning->get_hash()) { +const String& attributed_meaning_to_string(Value& meaning) { + String &result=*new(meaning.pool()) String(meaning.pool()); + if(Hash *hash=meaning.get_hash()) { // $value(value) $subattribute(subattribute value) if(Value *value=static_cast(hash->get(*value_name))) result.append(value->as_string(), String::UL_HEADER, true); hash->foreach(append_attribute_subattribute, &result); } else // result value - result.append(meaning->as_string(), String::UL_HEADER, true); + result.append(meaning.as_string(), String::UL_HEADER, true); return result; } \ No newline at end of file