# HG changeset patch # User Timo Sirainen # Date 1237840391 14400 # Node ID dd441977c578c229533949cc8b818d9b3ceea5e8 # Parent 43a49b3d3b5e4914a7456e2a81c489b488ec4f13 fts-solr: Solr breaks when it sees control characters, so replace them with spaces. diff -r 43a49b3d3b5e -r dd441977c578 src/plugins/fts-solr/fts-backend-solr.c --- a/src/plugins/fts-solr/fts-backend-solr.c Mon Mar 23 12:51:30 2009 -0400 +++ b/src/plugins/fts-solr/fts-backend-solr.c Mon Mar 23 16:33:11 2009 -0400 @@ -64,8 +64,20 @@ case '>': str_append(dest, ">"); break; + case '\t': + case '\n': + case '\r': + /* exceptions to the following control char check */ + str_append_c(dest, data[i]); + break; default: - str_append_c(dest, data[i]); + if (data[i] < 32) { + /* SOLR doesn't like control characters. + replace them with spaces. */ + str_append_c(dest, ' '); + } else { + str_append_c(dest, data[i]); + } break; } }