From 51c0c1fdd47a60470318f4d0ca5e7b0b0c5ce4e5 Mon Sep 17 00:00:00 2001 From: David Hicks Date: Sat, 30 Jul 2011 18:09:05 +1000 Subject: [PATCH] Remove db_num_rows() from file_copy_attachments function --- application/core/file_api.php | 70 +++++++++++++++++------------------ 1 file changed, 33 insertions(+), 37 deletions(-) diff --git a/application/core/file_api.php b/application/core/file_api.php index b022987ff9..bbf13a2cc1 100644 --- a/application/core/file_api.php +++ b/application/core/file_api.php @@ -1021,47 +1021,43 @@ function file_move_bug_attachments( $p_bug_id, $p_project_id_to ) { } /** - * * Copies all attachments from the source bug to the destination bug - * + * *

Does not perform history logging and does not perform access checks.

- * + * * @param int $p_source_bug_id * @param int $p_dest_bug_id */ function file_copy_attachments( $p_source_bug_id, $p_dest_bug_id ) { - - $t_mantis_bug_file_table = db_get_table( 'bug_file' ); - - $query = 'SELECT * FROM ' . $t_mantis_bug_file_table . ' WHERE bug_id = ' . db_param(); - $result = db_query_bound( $query, Array( $p_source_bug_id ) ); - $t_count = db_num_rows( $result ); - - $t_bug_file = array(); - for( $i = 0;$i < $t_count;$i++ ) { - $t_bug_file = db_fetch_array( $result ); - - # prepare the new diskfile name and then copy the file - $t_file_path = dirname( $t_bug_file['folder'] ); - $t_new_diskfile_name = $t_file_path . file_generate_unique_name( 'bug-' . $t_bug_file['filename'], $t_file_path ); - $t_new_file_name = file_get_display_name( $t_bug_file['filename'] ); - if(( config_get( 'file_upload_method' ) == DISK ) ) { - copy( $t_bug_file['diskfile'], $t_new_diskfile_name ); - chmod( $t_new_diskfile_name, config_get( 'attachments_file_permissions' ) ); - } - - $query = "INSERT INTO $t_mantis_bug_file_table - ( bug_id, title, description, diskfile, filename, folder, filesize, file_type, date_added, content ) - VALUES ( " . db_param() . ", - " . db_param() . ", - " . db_param() . ", - " . db_param() . ", - " . db_param() . ", - " . db_param() . ", - " . db_param() . ", - " . db_param() . ", - " . db_param() . ", - " . db_param() . ");"; - db_query_bound( $query, Array( $p_dest_bug_id, $t_bug_file['title'], $t_bug_file['description'], $t_new_diskfile_name, $t_new_file_name, $t_bug_file['folder'], $t_bug_file['filesize'], $t_bug_file['file_type'], $t_bug_file['date_added'], $t_bug_file['content'] ) ); - } + + $t_mantis_bug_file_table = db_get_table( 'bug_file' ); + + $t_query = 'SELECT * FROM ' . $t_mantis_bug_file_table . ' WHERE bug_id = ' . db_param(); + $t_result = db_query_bound( $t_query, Array( $p_source_bug_id ) ); + + $t_bug_file = array(); + while ( $t_bug_file = db_fetch_array( $t_result ) ) { + # prepare the new diskfile name and then copy the file + $t_file_path = dirname( $t_bug_file['folder'] ); + $t_new_diskfile_name = $t_file_path . file_generate_unique_name( 'bug-' . $t_bug_file['filename'], $t_file_path ); + $t_new_file_name = file_get_display_name( $t_bug_file['filename'] ); + if ( config_get( 'file_upload_method' ) == DISK ) { + copy( $t_bug_file['diskfile'], $t_new_diskfile_name ); + chmod( $t_new_diskfile_name, config_get( 'attachments_file_permissions' ) ); + } + + $t_query = "INSERT INTO $t_mantis_bug_file_table + ( bug_id, title, description, diskfile, filename, folder, filesize, file_type, date_added, content ) + VALUES ( " . db_param() . ", + " . db_param() . ", + " . db_param() . ", + " . db_param() . ", + " . db_param() . ", + " . db_param() . ", + " . db_param() . ", + " . db_param() . ", + " . db_param() . ", + " . db_param() . ");"; + db_query_bound( $t_query, Array( $p_dest_bug_id, $t_bug_file['title'], $t_bug_file['description'], $t_new_diskfile_name, $t_new_file_name, $t_bug_file['folder'], $t_bug_file['filesize'], $t_bug_file['file_type'], $t_bug_file['date_added'], $t_bug_file['content'] ) ); + } }