Here is my solution:
in /oc-includes/osclass/model/Search.php, around line 660 (the line that I mentioned in my previous post)
change the query lline as below:
$this->sql = sprintf("SELECT %st_item.*, %st_item_location.*, cd.s_name as s_category_name %s FROM %st_item, %st_item_location, %st_category, %st_category_description as cd WHERE %st_item_location.fk_i_item_id = %st_item.pk_i_id %s AND %st_item.fk_i_category_id = cd.fk_i_category_id and cd.fk_c_locale_code = '%s' ORDER BY %s %s LIMIT %d, %d", DB_TABLE_PREFIX, DB_TABLE_PREFIX, $extraFields,DB_TABLE_PREFIX, DB_TABLE_PREFIX, DB_TABLE_PREFIX ,DB_TABLE_PREFIX, DB_TABLE_PREFIX, DB_TABLE_PREFIX, $conditionsSQL, DB_TABLE_PREFIX, osc_language(), $this->order_column, $this->order_direction, $this->limit_init, $this->results_per_page);
here, we are just adding a "AND cd.fk_c_locale_code = '%s'" condition just before "ORDER BY" and we are giving osc_language() as sprintf format parameter.