Changeset 45

Show
Ignore:
Timestamp:
11/10/07 17:54:27 (9 months ago)
Author:
nlawren2
Message:

Fixed some possible SQL bugs

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • vowfsc/db.c

    r44 r45  
    133133 
    134134        // The result should be in the first row of the first column 
    135         int revision=*(int*)PQgetvalue(res,0,0); 
    136  
    137         PQfreemem(res); 
    138  
    139         return revision
     135        int revision_id=*(int*)PQgetvalue(res,0,0); 
     136 
     137        PQfreemem(res); 
     138 
     139        return revision_id
    140140} 
    141141 
     
    216216 
    217217 
    218 file_t *db_get_file_rev( int file_id, int revision ){ 
     218file_t *db_get_file_rev( int file_id, int revision_id ){ 
    219219        file_t *stat=malloc(sizeof(file_t)); 
    220220 
     
    225225                           "WHERE file_id = \'%i\'" 
    226226                           "AND revision_id = \'%i\'", 
    227                            file_id, revision); 
     227                           file_id, revision_id); 
    228228        PGresult *res=PQexec(pq_conn,pq_request); 
    229229 
     
    278278 
    279279 
    280 char *db_get_file_rev_data( int file_id, int revision ){ 
     280char *db_get_file_rev_data( int file_id, int revision_id ){ 
    281281        int i = db_get_max_file_revision(file_id); 
    282282        char *data, *diff, *temp; 
     
    298298        PQfreemem(res); 
    299299 
    300         while( --i >= revision ){ 
     300        while( --i >= revision_id ){ 
    301301                char pq_request[BUFFER_SIZE]; 
    302302                sprintf(pq_request,"SELECT diff" 
     
    390390 
    391391 
    392 dir_t *db_get_dir_rev( int dir_id, int revision ){ 
     392dir_t *db_get_dir_rev( int dir_id, int revision_id ){ 
    393393        dir_t *stat=malloc(sizeof(dir_t)); 
    394394 
     
    398398                           "WHERE directory_id = \'%i\' " 
    399399                           "AND revision_id = \'%i\'", 
    400                            dir_id, revision); 
     400                           dir_id, revision_id); 
    401401        PGresult *res=PQexec(pq_conn,pq_request); 
    402402 
     
    441441 
    442442        // The result should be in the first row of the first column 
    443         int revision=*(int*)PQgetvalue(res,0,0); 
    444  
    445         PQfreemem(res); 
    446  
    447         return revision
     443        int revision_id=*(int*)PQgetvalue(res,0,0); 
     444 
     445        PQfreemem(res); 
     446 
     447        return revision_id
    448448} 
    449449 
  • vowfsc/db.h

    r44 r45  
    1111#define BUFFER_SIZE     1024 
    1212 
    13 typedef char bool; 
    14 #define true    1 
    15 #define false   0 
    16  
    1713typedef struct file file_t; 
    1814struct file{ 
     
    2117#include "file.db" 
    2218}; 
    23  
    2419 
    2520typedef struct dir dir_t; 
     
    5853 */ 
    5954file_t *db_get_file( int file_id ); 
    60 file_t *db_get_file_rev( int file_id, int revision ); 
     55file_t *db_get_file_rev( int file_id, int revision_id ); 
    6156 
    6257/* db_get_file_data returns the undiffed data from  
     
    6560 */ 
    6661char *db_get_file_data( int file_id ); 
    67 char *db_get_file_rev_data( int file_id, int revision ); 
     62char *db_get_file_rev_data( int file_id, int revision_id ); 
    6863 
    6964 
     
    7368 */ 
    7469stream_t *db_get_file_stream( int file_id ); 
    75 stream_t *db_get_file_rev_stream( int file_id, int revision ); 
     70stream_t *db_get_file_rev_stream( int file_id, int revision_id ); 
    7671 
    7772/* Looks first to see if the given stream exists, and 
     
    105100 * file or NULL in the case of a failture. 
    106101 */ 
    107 int db_branch_file(int file_id, int revision, char *new_file_name, char *new_file_path ); 
     102int db_branch_file(int file_id, int revision_id, char *new_file_name, char *new_file_path ); 
    108103 
    109104/* For revisioning an existing file, this function 
     
    141136 */ 
    142137dir_t *db_get_dir( int dir_id ); 
    143 dir_t *db_get_dir_rev( int dir_id, int revision ); 
     138dir_t *db_get_dir_rev( int dir_id, int revision_id ); 
    144139 
    145140