From 046857dfb88f05e6b310fe9ef07b9f2d3ac5922d Mon Sep 17 00:00:00 2001 From: Dirk Engling Date: Thu, 20 Feb 2014 22:42:56 +0100 Subject: Restructure project, make names more clear --- src/mapcoords.c | 62 --------------------------------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 src/mapcoords.c (limited to 'src/mapcoords.c') diff --git a/src/mapcoords.c b/src/mapcoords.c deleted file mode 100644 index b46f1cf..0000000 --- a/src/mapcoords.c +++ /dev/null @@ -1,62 +0,0 @@ -#define _WITH_GETLINE -#include "mystdlib.h" -#include -#include -#include -#include - -int find_offset( const void *key, const void *line ) -{ - size_t l = strlen( (char*)key ); - return strncmp( (char*)key, *(char**)line, l ); -} - -int qsort_cmp( const void *a, const void *b ) -{ - return strcmp( *(char**)a, *(char**)b ); -} - -int main( int argc, char ** args ) -{ - MAP coords = map_file( args[1], 1 ); - int i, l, lines; - char *p, **offsets, *input = malloc(1024); - ssize_t ll; - size_t input_length = 1024; - - if( !coords ) exit( 111 ); - p = (char *)coords->addr; - for ( i=0, lines=0; isize; ++i ) - if( p[i] == 0x00 ) - ++lines; - - offsets = malloc( lines * sizeof(char*)); - if( !offsets ) exit( 111 ); - - offsets[0] = p; l = 1; - for ( i=0; isize; ++i ) - if( p[i] == 0x00 ) - offsets[l++] = p+i+1; - - l--; qsort(offsets, l, sizeof(char*), qsort_cmp ); - - while( ( ll = getline( &input, &input_length, stdin ) ) >= 0 ) - { - char **coord_line; - input[ll-1]='\t'; - coord_line = bsearch( input, offsets, l, sizeof(char*), find_offset ); - if( !coord_line && ll > 2 && isalpha( input[ll-2] ) ) - { - input[ll-2] = '\t'; input[ll-1]=0; - ll--; - coord_line = bsearch( input, offsets, l, sizeof(char*), find_offset ); - } - - if( coord_line ) - printf( "%s\n", *coord_line + ll ); - else - puts( "\t" ); - } - - return 0; -} -- cgit v1.2.3