Changeset 33

Show
Ignore:
Timestamp:
09/22/07 18:52:25 (7 years ago)
Author:
jesus
Message:

refactor, no function change

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • tags/2007080101

    • Property svn:ignore set to
      configure
      config.log
      config.guess
      run-tests.php
      config.h
      config.sub
      ltmain.sh
      Makefile.fragments
      Makefile.objects
      .libs
      modules
      Makefile.global
      Makefile
      mkinstalldirs
      config.nice
      include
      configure.in
      config.status
      build
      config.h.in
      libtool
      autom4te.cache
      acinclude.m4
      missing
      aclocal.m4
      install-sh
  • tags/2007080101/fastxsl.c

    r26 r33  
    346346#endif 
    347347 
     348#ifdef F_SETLK 
     349#define ACQUIRE(lockfd) do { \ 
     350        struct flock lock; \ 
     351        lock.l_start = 0; \ 
     352        lock.l_whence = SEEK_SET; \ 
     353        lock.l_len = 0; \ 
     354        lock.l_type = F_WRLCK; \ 
     355        fcntl((lockfd), F_SETLKW, &lock); \ 
     356} while(0) 
     357#define RELEASE(lockfd) do { \ 
     358        struct flock lock; \ 
     359        lock.l_start = 0; \ 
     360        lock.l_whence = SEEK_SET; \ 
     361        lock.l_len = 0; \ 
     362        lock.l_type = F_UNLCK; \ 
     363        fcntl((lockfd), F_SETLK, &lock); \ 
     364} while(0) 
     365#else 
     366#define ACQUIRE(lockfd) flock((lockfd), LOCK_EX) 
     367#define RELEASE(lockfd) flock((lockfd), LOCK_UN) 
     368#endif 
     369 
    348370#ifdef FASTXSL_MM 
    349371/* {{{ proto void fastxsl_CachedDocumentFunction(xmlXPathParserContextPtr ctxt, int nargs) 
     
    360382        struct stat sb; 
    361383        php_ss_wrapper *ss_wrapper; 
    362 #ifdef F_SETLK 
    363         struct flock lock; 
    364  
    365         lock.l_start = 0; 
    366         lock.l_whence = SEEK_SET; 
    367         lock.l_len = 0; 
    368 #endif 
     384 
    369385        xmlXPathStringFunction(ctxt, 1); 
    370386        if (ctxt->value->type != XPATH_STRING) { 
     
    396412                sb.st_mtime = 0; 
    397413        } 
    398 #ifdef F_SETLK 
    399         lock.l_type = F_WRLCK; 
    400         fcntl(lockfd, F_SETLKW, &lock); 
    401 #else 
    402         flock(lockfd, LOCK_EX); 
    403 #endif 
     414        ACQUIRE(lockfd); 
    404415        mm_lock(FASTXSL_G(cache)->mm, MM_LOCK_RW); 
    405416        ss_wrapper = fl_hash_find(FASTXSL_G(cache)->table, ss_filename, ss_filename_len); 
     
    445456                } 
    446457                if (!ss_wrapper) { 
    447 #ifdef F_SETLK 
    448                         lock.l_type = F_UNLCK; 
    449                         fcntl(lockfd, F_SETLK, &lock); 
    450 #else 
    451                         flock(lockfd, LOCK_UN); 
    452 #endif 
     458                        RELEASE(lockfd); 
    453459                        close(lockfd); 
    454460                        //xmlCleanupParserr(); 
     
    504510                                //xmlCleanupParserr(); 
    505511                                if (!ss_wrapper) { 
    506 #ifdef F_SETLK 
    507                                         lock.l_type = F_UNLCK; 
    508                                         fcntl(lockfd, F_SETLK, &lock); 
    509 #else 
    510                                         flock(lockfd, LOCK_UN); 
    511 #endif 
     512                                        RELEASE(lockfd); 
    512513                                        close(lockfd); 
    513514                                        goto error; 
     
    519520        //xmlCleanupParserr(); 
    520521        Xml_UseAllocationFunctions(); 
    521 #ifdef F_SETLK 
    522         lock.l_type = F_UNLCK; 
    523         fcntl(lockfd, F_SETLK, &lock); 
    524 #else 
    525         flock(lockfd, LOCK_UN); 
    526 #endif 
     522        RELEASE(lockfd); 
    527523        close(lockfd); 
    528524 
     
    817813        struct stat       sb; 
    818814        int lockfd; 
    819 #ifdef F_SETLK 
    820         struct flock lock; 
    821  
    822         lock.l_start = 0; 
    823         lock.l_whence = SEEK_SET; 
    824         lock.l_len = 0; 
    825 #endif 
    826  
    827815         
    828816        if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sz|z", &ss_filename, &ss_filename_len, 
     
    862850                sb.st_mtime = 0; 
    863851        } 
    864 #ifdef F_SETLK 
    865         lock.l_type = F_WRLCK; 
    866         fcntl(lockfd, F_SETLKW, &lock); 
    867 #else 
    868         flock(lockfd, LOCK_EX); 
    869 #endif 
     852        ACQUIRE(lockfd); 
    870853        mm_lock(FASTXSL_G(cache)->mm, MM_LOCK_RW); 
    871854        ss_wrapper = fl_hash_find(FASTXSL_G(cache)->table, ss_filename, ss_filename_len); 
     
    877860inshm = 0; 
    878861                if (!ss_wrapper) { 
    879 #ifdef F_SETLK 
    880                         lock.l_type = F_UNLCK; 
    881                         fcntl(lockfd, F_SETLK, &lock); 
    882 #else 
    883                         flock(lockfd, LOCK_UN); 
    884 #endif 
     862                        RELEASE(lockfd); 
    885863                        close(lockfd); 
    886864                        //xmlCleanupParserr(); 
     
    902880                                Xml_UseAllocationFunctions(); 
    903881                                if (!ss_wrapper) { 
    904 #ifdef F_SETLK 
    905                                         lock.l_type = F_UNLCK; 
    906                                         fcntl(lockfd, F_SETLK, &lock); 
    907 #else 
    908                                         flock(lockfd, LOCK_UN); 
    909 #endif 
     882                                        RELEASE(lockfd); 
    910883                                        close(lockfd); 
    911884                                        _XD_Wrapper_Dtor(result_wrapper); 
     
    919892        //xmlCleanupParserr(); 
    920893        Xml_UseAllocationFunctions(); 
    921 #ifdef F_SETLK 
    922         lock.l_type = F_UNLCK; 
    923         fcntl(lockfd, F_SETLK, &lock); 
    924 #else 
    925         flock(lockfd, LOCK_UN); 
    926 #endif 
     894        RELEASE(lockfd); 
    927895        close(lockfd); 
    928896