Commit graph

336 commits

Author SHA1 Message Date
c9s
9f58a5b651 comment for the function 2014-06-02 08:19:44 +08:00
c9s
f3bf32b922 refactor path insert function 2014-06-02 08:04:57 +08:00
c9s
20c6a84f7c continue when escape 2014-06-02 07:10:31 +08:00
c9s
b80f90dad9 -D_BSD_SOURCE=1 2014-06-02 07:03:32 +08:00
c9s
7597398c08 include config.h 2014-06-02 06:58:02 +08:00
c9s
b2a9ad47d8 fprintf to print error to stderr 2014-06-02 06:53:31 +08:00
c9s
9271f0bf08 free the variable 2014-06-02 06:50:24 +08:00
c9s
57b4fde126 print errmsg 2014-06-02 06:48:00 +08:00
c9s
17b4201197 more incomplete slug pattern tests 2014-06-02 06:38:50 +08:00
c9s
a6be7f5061 static inline 2014-06-02 06:32:30 +08:00
c9s
0eb9cad11c r3_path_contains_slug_char function 2014-06-02 06:27:35 +08:00
c9s
493a9d7d8e Add coverage option to gcc 2014-06-02 06:14:23 +08:00
c9s
7cfdfbb3f5 inline static 2014-06-02 06:01:42 +08:00
c9s
f9b7dd8522 fix prototype 2014-06-02 05:56:46 +08:00
c9s
00c364dacb const 2014-06-02 05:55:45 +08:00
c9s
c801164c88 contains_slug_char declare 2014-06-02 05:53:39 +08:00
c9s
fcc00deadb Merge branch 'slugfix' of github.com:c9s/r3 into slugfix 2014-06-02 05:50:49 +08:00
c9s
20e3f1a3ba asprintf returns memory pointer which is from malloc() not zmalloc() 2014-06-02 05:48:27 +08:00
c9s
8775c3ff85 wtf 2014-06-02 05:31:47 +08:00
c9s
359d9df369 improve r3_slug_parse function 2014-06-02 05:02:37 +08:00
c9s
6dfd37d43d move slug related functions to slug.c and slug.h 2014-06-02 04:52:41 +08:00
c9s
2a75861741 Fix gvc graph 2014-06-02 01:35:58 +08:00
c9s
24b84d068d Merge branch 'master' into slugfix
Conflicts:
	tests/check_slug.c
2014-06-02 01:23:10 +08:00
c9s
0636c9dad3 fix slug compile pattern 2014-06-02 01:21:02 +08:00
c9s
39fc24e3fa fix pattern compiler 2014-06-02 01:05:57 +08:00
c9s
c52639c431 slug parser 2014-06-02 01:01:29 +08:00
c9s
e1e5c3a4ae test incomplete slug 2014-06-02 00:27:30 +08:00
c9s
258128f30d slug_count return errstr 2014-06-02 00:22:12 +08:00
c9s
da2f2311c9 CHECK_PTR macro to check pointer 2014-06-01 21:58:29 +08:00
c9s
70693ea1f2 errstr parameter in slug 2014-06-01 20:51:47 +08:00
c9s
76182660f9 remove trailing newline 2014-06-01 20:15:25 +08:00
c9s
7d6209d99c build with 3rdparty objects
use -static linking when linking libr3

AM_CFLAGS and AM_LDFLAGS are Makefile.am scope options

disable valgrind tracing check-tree

Makefile.am fix

Add json support

remove useless c files
2014-06-01 19:43:45 +08:00
c9s
b139d8d3f2 add const to node 2014-06-01 14:54:16 +08:00
c9s
7d69e79535 gvc fix 2014-06-01 14:53:12 +08:00
c9s
6e6de35fd0 fix tests for graphviz 2014-06-01 14:41:45 +08:00
c9s
adde7bc361 remove unused variables 2014-06-01 14:35:29 +08:00
c9s
8ee11aaa6f reduce variables and add const char* to insert_pathl. 2014-06-01 14:33:56 +08:00
c9s
998560634e remove unused variable and add const 2014-06-01 02:58:03 +08:00
c9s
40fa19002a Add const for slug_compile 2014-06-01 02:56:29 +08:00
c9s
bc27293f36 more const 2014-06-01 02:54:48 +08:00
c9s
8f8dbd520b remove const from match_entry pointer 2014-06-01 02:39:39 +08:00
c9s
1a4eb14a05 error code support
- return error code if compilation error occurs
- use asprintf to sprint errstr
2014-06-01 02:03:44 +08:00
c9s
642fdfca88 include assert 2014-06-01 01:40:28 +08:00
c9s
fe57cbf54d check pointer 2014-06-01 01:38:22 +08:00
c9s
4bb3ba9d04 assert(entry); 2014-06-01 01:26:59 +08:00
c9s
4f93a530e1 assert free 2014-06-01 01:26:36 +08:00
c9s
188a687150 check the pointer returns from zmalloc 2014-06-01 01:25:34 +08:00
c9s
a19d2377cc check the pointer returns from zmalloc 2014-06-01 01:24:57 +08:00
c9s
7d9b6c8889 check match_entry->vars 2014-06-01 01:20:28 +08:00
c9s
b61d5a78ae fix match_route 2014-06-01 01:16:53 +08:00
c9s
9433e2192a route api improvement 2014-05-31 19:56:46 +08:00
c9s
c58d48f962 Fix include 2014-05-28 21:56:22 +08:00
c9s
d400789d96 more const pointers 2014-05-28 21:09:37 +08:00
c9s
072c72621c separate header files 2014-05-28 21:08:06 +08:00
c9s
9cb2f80e1f more const pointers 2014-05-28 21:03:59 +08:00
c9s
a2bec00a9e match_entry.c 2014-05-28 21:02:57 +08:00
c9s
f5996731ca Add const for pointers 2014-05-28 21:00:02 +08:00
c9s
cd16d67663 fix zcalloc bug 2014-05-27 14:18:45 +08:00
c9s
cf734a480c edge branch with routes and other resets 2014-05-27 14:16:42 +08:00
c9s
60821aac0c const pointer 2014-05-27 12:35:17 +08:00
c9s
f596c7392d Add const 2014-05-27 12:34:28 +08:00
c9s
6cc57d545f const char * 2014-05-27 01:08:31 +08:00
c9s
9f8176447b const char * 2014-05-27 01:08:01 +08:00
c9s
54397987bd Add const 2014-05-27 01:07:33 +08:00
c9s
7aaed3e5d7 merge str_array.h 2014-05-26 21:39:36 +08:00
c9s
ef9962c958 struct field data type improvement for memory usage. 2014-05-24 18:45:43 +08:00
c9s
c1cd7444cb Add struct fields optimization 2014-05-24 17:13:55 +08:00
c9s
591b6cd4c1 when matching pcre do not switch check rc 2014-05-23 23:00:49 +08:00
c9s
628f09a8f4 Add OP_EXPECT_MORE_ALPHA opcode 2014-05-23 22:58:20 +08:00
c9s
9a1f7cfced update benchmark records 2014-05-23 17:36:47 +08:00
c9s
d02e16a65c improve stack allocation 2014-05-23 16:18:58 +08:00
c9s
b394be57cb support simple opcode 2014-05-23 16:18:58 +08:00
c9s
333fabd795 insert path for opcode 2014-05-23 16:18:58 +08:00
c9s
fe70b55253 Add node type for comparison 2014-05-23 16:18:57 +08:00
c9s
403b1d9ba2 Add opcode to edge 2014-05-23 16:18:57 +08:00
c9s
7d16413cb3 more benchmark result 2014-05-23 16:18:57 +08:00
c9s
52fd5979c0 move ov to stack variable 2014-05-23 16:18:57 +08:00
c9s
93f4654c54 pass studied pattern 2014-05-23 16:18:57 +08:00
c9s
ad6b7b236f combined_pattern_len is not used 2014-05-23 16:18:57 +08:00
c9s
3f4fcb8c27 remove duplicate header include 2014-05-23 16:18:56 +08:00
c9s
c1e5ea4393 Add OP_EXPECT_NODASH opcode 2014-05-23 16:18:56 +08:00
c9s
4d93d217a4 test r3_pattern_to_opcode 2014-05-23 16:18:56 +08:00
c9s
a41c9187ac Add some basic opcode 2014-05-23 16:18:56 +08:00
c9s
59e6997959 there is already a pointer guard in zmalloc 2014-05-23 16:18:56 +08:00
c9s
c841de166c free old pattern 2014-05-23 16:18:56 +08:00
ChangZhuo Chen (陳昌倬)
fb88655df0 Remove CMake related files 2014-05-22 22:53:49 +08:00
c9s
62bb4e5460 remove unnecessary pointer check 2014-05-22 22:26:46 +08:00
c9s
fe5c2381b5 remove point checking in str_array_free 2014-05-22 22:23:47 +08:00
c9s
9d26a53a08 update Makefile.am 2014-05-22 11:42:19 +08:00
c9s
c503a6d5d3 use jemalloc only in jemalloc major version > 2 2014-05-22 11:41:51 +08:00
c9s
1fdfaef16e what if we always use -ljemalloc 2014-05-22 11:34:37 +08:00
c9s
a8cec68f72 use -std=c99 2014-05-22 11:09:44 +08:00
c9s
e48538c526 check USE_JEMALLOC flag in Makefile.am 2014-05-22 11:09:43 +08:00
c9s
e8653eeb28 include jemalloc.h 2014-05-22 11:06:34 +08:00
c9s
eaa11d5380 found flag for slug char 2014-05-22 11:06:34 +08:00
c9s
33eea25926 check length 2014-05-21 20:30:35 +08:00
c9s
b83946e487 check macro PCRE_STUDY_JIT_COMPILE to compile pcre with JIT 2014-05-21 18:28:21 +08:00
c9s
946bac8f3c seems like pcre_free_study is not defined on older ubuntu 2014-05-21 18:26:08 +08:00
c9s
82ea09e146 when we free it, we know it's not NULL 2014-05-21 18:22:11 +08:00
c9s
834d87173a Fix variable name 2014-05-21 18:21:15 +08:00
c9s
175b594234 Fix 2014-05-21 18:20:48 +08:00
c9s
238aee085f use pcre's own functions to free pcre related structures 2014-05-21 18:17:51 +08:00
c9s
6762025fe6 free edge struct 2014-05-21 18:17:51 +08:00
c9s
7d288404c7 libpcre does not use zmalloc 2014-05-21 18:17:51 +08:00
Omer Katz
7303bc8f00 More guarding against freeing NULL pointers. 2014-05-21 12:50:56 +03:00
Omer Katz
61b3b24e2e Guarding against freeing NULL pointers. 2014-05-21 12:46:56 +03:00
Omer Katz
3ea9354e0b Implemented zstrndup. 2014-05-21 11:39:49 +03:00
Omer Katz
e34759c1aa Using zstrndup instead of strndup) 2014-05-21 11:18:12 +03:00
Omer Katz
18a92867fc Removed wrong call to zfree that caused a segfault. 2014-05-21 11:14:12 +03:00
Omer Katz
0e627e33d5 Fixed all warnings from tests. 2014-05-21 10:50:37 +03:00
c9s
de5a308002 fix header includes 2014-05-21 14:59:07 +08:00
c9s
b1939e287d Merge branch 'topic/zmalloc' of https://github.com/thedrow/r3 into thedrow-topic/zmalloc 2014-05-21 14:51:25 +08:00
c9s
5a84e9aeb2 update pcre match error message 2014-05-21 14:27:04 +08:00
Omer Katz
9c191682da Added zmalloc from redis in order to allow different allocators. 2014-05-20 20:50:15 +03:00
c9s
0064eb27a1 const to node * n 2014-05-21 01:22:49 +08:00
c9s
0d2ae75bc2 prefetch firstbyte 2014-05-21 01:20:18 +08:00
c9s
e9797295b5 Fix endpoint when branching edges 2014-05-21 01:15:54 +08:00
c9s
5bd1757e5f function name fix 2014-05-21 00:47:09 +08:00
c9s
cae305b92d when child is not endpoint, return NULL 2014-05-21 00:37:27 +08:00
c9s
90890b09e5 put r3_define.h back XD becase we depends on bool 2014-05-21 00:33:19 +08:00
c9s
92e2ddf066 remove r3_define.h 2014-05-20 23:54:57 +08:00
c9s
7ba0efc60c use doublecirlce for endpoint nodes 2014-05-20 23:48:35 +08:00
c9s
5183e9a052 merge r3_define.h into r3.h 2014-05-20 23:33:51 +08:00
c9s
750a9beaa4 _r3_tree_insert_pathl to r3_tree_insert_pathl_ 2014-05-20 23:30:36 +08:00
c9s
02b4008a69 str_split is unused 2014-05-20 23:29:17 +08:00
c9s
85001c6327 Rename compile_slug to slug_compile 2014-05-20 23:25:55 +08:00
c9s
99819c4bbb move strndiff and strdiff to node.c and make it private 2014-05-20 23:25:12 +08:00
c9s
26c7e8896e Rename count_slug to slug_count 2014-05-20 23:21:15 +08:00
c9s
9499432084 remove debug print 2014-05-20 21:41:24 +08:00
c9s
898ea300a9 Fix placeholder finder 2014-05-20 21:38:37 +08:00
c9s
a086f9f6e8 Fix memory allocation 2014-05-20 16:16:36 +08:00
c9s
e2bf5d5177 Allocation fixes 2014-05-20 15:49:31 +08:00
c9s
188bb991b9 -ggdb when debug mode is enable (--enable-debug) 2014-05-20 15:34:41 +08:00
c9s
5331d375ac Fix gnu c compiler error when the variable is the same 2014-05-20 15:32:22 +08:00
c9s
fd4e89c2f4 check NULL pointer 2014-05-20 15:14:12 +08:00
c9s
9d19d233c6 comment regexp symbol 2014-05-20 15:06:52 +08:00
c9s
41dc7373f3 comment jemalloc include lines 2014-05-20 01:28:51 +08:00
c9s
678d096d07 Merge branch 'feature/export' of https://github.com/czchen/r3 into czchen-feature/export
Conflicts:
	src/Makefile.am
2014-05-20 01:26:40 +08:00
ChangZhuo Chen (陳昌倬)
7bf513d5cd Update export symbols regex to ^r3_|^match_ 2014-05-19 22:32:39 +08:00
c9s
1ec3943591 we don't use list.c for now, so just skip it 2014-05-19 22:00:58 +08:00
ChangZhuo Chen (陳昌倬)
bad5cc8966 Export symbols only when it matches regex '^r3_' 2014-05-19 21:43:42 +08:00
c9s
c91c8f8f99 delte Makefile.in 2014-05-19 20:04:34 +08:00
c9s
2278a0f045 -fprofile-arcs -ftest-coverage for debug mode 2014-05-19 11:38:25 +08:00
c9s
8ba1230610 Add endpoint check 2014-05-19 10:49:47 +08:00
c9s
401443f7ac Add r3_ prefix to route struct related functions 2014-05-19 10:39:03 +08:00
c9s
2ac6f87422 Fix r3_tree_match_route 2014-05-19 10:34:48 +08:00
c9s
2084675423 r3_tree_insert_path API changes 2014-05-19 10:12:41 +08:00
c9s
bada37fd75 Fix warning 2014-05-18 20:16:53 +08:00
c9s
baf23fafb0 fix pattern matching for /user/{id}-{user} 2014-05-18 20:09:42 +08:00
c9s
f039cc3c8f Fix child insertion 2014-05-18 20:09:42 +08:00