X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Flibrary%2FlibraryClean.ml;h=0a19d8d5603451fa1e7ccd63e6e4a6170327ebd9;hb=66929b8edb58d468a134b648466f3e9c45ba5c0e;hp=54aa860c9b290acb5b72bd86d7ca31983e0fd1d8;hpb=55e71f58c4ee05842c53960ffbfb3fed7cf3ac30;p=helm.git diff --git a/helm/software/components/library/libraryClean.ml b/helm/software/components/library/libraryClean.ml index 54aa860c9..0a19d8d56 100644 --- a/helm/software/components/library/libraryClean.ml +++ b/helm/software/components/library/libraryClean.ml @@ -51,17 +51,20 @@ let one_step_depend suri = let buri = buri ^ "/" in let buri = HSql.escape buri in let obj_tbl = MetadataTypes.obj_tbl () in - if HSql.isMysql then - sprintf ("SELECT source, h_occurrence FROM %s WHERE " - ^^ "h_occurrence REGEXP '^%s[^/]*$'") obj_tbl buri - else - begin + if HSql.isMysql then + sprintf ("SELECT source, h_occurrence FROM %s WHERE " + ^^ "h_occurrence REGEXP '^%s[^/]*$'") obj_tbl buri + else + begin + sprintf ("SELECT source, h_occurrence FROM %s WHERE " + ^^ "REGEXP(h_occurrence, '^%s[^/]*$')") obj_tbl buri + (* implementation with vanilla ocaml-sqlite3 HLog.debug "Warning SELECT without REGEXP"; - sprintf - ("SELECT source, h_occurrence FROM %s WHERE " ^^ - "h_occurrence LIKE '%s%%'") - obj_tbl buri - end + sprintf + ("SELECT source, h_occurrence FROM %s WHERE " ^^ + "h_occurrence LIKE '%s%%' ESCAPE \"\\\"") + obj_tbl buri*) + end in try let rc = HSql.exec (LibraryDb.instance ()) query in @@ -94,11 +97,15 @@ let db_uris_of_baseuri buri = ^^ "source REGEXP '^%s[^/]*$'") obj_tbl buri else begin + sprintf ("SELECT source FROM %s WHERE " + ^^ "REGEXP(source, '^%s[^/]*$')") obj_tbl buri + (* implementation with vanilla ocaml-sqlite3 HLog.debug "Warning SELECT without REGEXP"; sprintf ("SELECT source, h_occurrence FROM %s WHERE " ^^ - "h_occurrence LIKE '%s%%'") + "h_occurrence LIKE '%s%%' ESCAPE \"\\\" ") obj_tbl buri + *) end in try