diff --git a/modules/statistics/statistics.admin.inc b/modules/statistics/statistics.admin.inc index 9139a2567afbc5a54af05c33bd8c693b5c4ac3c8..dc92ba126ee87fb86c86a5f1cf2996a652df50af 100644 --- a/modules/statistics/statistics.admin.inc +++ b/modules/statistics/statistics.admin.inc @@ -265,7 +265,7 @@ function statistics_settings_form() { '#type' => 'select', '#title' => t('Discard access logs older than'), '#default_value' => 259200, - '#options' => drupal_map_assoc(array(3600, 10800, 21600, 32400, 43200, 86400, 172800, 259200, 604800, 1209600, 2419200, 4838400, 9676800), 'format_interval'), + '#options' => array(0 => t('Never')) + drupal_map_assoc(array(3600, 10800, 21600, 32400, 43200, 86400, 172800, 259200, 604800, 1209600, 2419200, 4838400, 9676800), 'format_interval'), '#description' => t('Older access log entries (including referrer statistics) will be automatically discarded. (Requires a correctly configured cron maintenance task.)', array('@cron' => url('admin/reports/status'))), ); diff --git a/modules/statistics/statistics.module b/modules/statistics/statistics.module index 42420326281fa31dc4fff82a3d33d26544fb1328..533490c1f2d6eca8de5b1046adf64af89e6f0c06 100644 --- a/modules/statistics/statistics.module +++ b/modules/statistics/statistics.module @@ -228,10 +228,12 @@ function statistics_cron() { variable_set('statistics_day_timestamp', REQUEST_TIME); } - // Clean up expired access logs. - db_delete('accesslog') - ->condition('timestamp', REQUEST_TIME - variable_get('statistics_flush_accesslog_timer', 259200), '<') - ->execute(); + // Clean up expired access logs (if applicable). + if (variable_get('statistics_flush_accesslog_timer', 259200) > 0) { + db_delete('accesslog') + ->condition('timestamp', REQUEST_TIME - variable_get('statistics_flush_accesslog_timer', 259200), '<') + ->execute(); + } } /**