--- C:/Documents and Settings/SDelFranco/Escritorio/mantis/mantisbt-1.2.1-official/bug_report.php	Fri Apr 23 14:28:34 2010
+++ H:/mantis/bug_report.php	Fri May 21 18:38:16 2010
@@ -104,16 +104,23 @@
 		$t_def = custom_field_get_definition( $t_id );
 
 		# Produce an error if the field is required but wasn't posted
-		if ( !gpc_isset_custom_field( $t_id, $t_def['type'] ) &&
-			( $t_def['require_report'] ||
-				$t_def['type'] == CUSTOM_FIELD_TYPE_ENUM ||
-				$t_def['type'] == CUSTOM_FIELD_TYPE_LIST ||
-				$t_def['type'] == CUSTOM_FIELD_TYPE_MULTILIST ||
-				$t_def['type'] == CUSTOM_FIELD_TYPE_RADIO ) ) {
+		if (	$t_def['require_report']
+				&& (
+					$t_def['type'] == CUSTOM_FIELD_TYPE_ENUM ||
+					$t_def['type'] == CUSTOM_FIELD_TYPE_LIST ||
+					$t_def['type'] == CUSTOM_FIELD_TYPE_MULTILIST ||
+					$t_def['type'] == CUSTOM_FIELD_TYPE_RADIO
+				) && !gpc_isset_custom_field( $t_id, $t_def['type'] )
+			) {
 			error_parameters( lang_get_defaulted( custom_field_get_field( $t_id, 'name' ) ) );
 			trigger_error( ERROR_EMPTY_FIELD, ERROR );
 		}
-		if ( !custom_field_validate( $t_id, gpc_get_custom_field( "custom_field_$t_id", $t_def['type'], NULL ) ) ) {
+		if (	$t_def['display_report']
+				&& !custom_field_validate(
+						$t_id,
+						gpc_get_custom_field( "custom_field_$t_id", $t_def['type'], NULL )
+					) 
+		) {
 			error_parameters( lang_get_defaulted( custom_field_get_field( $t_id, 'name' ) ) );
 			trigger_error( ERROR_CUSTOM_FIELD_INVALID_VALUE, ERROR );
 		}
@@ -136,7 +143,7 @@
 	# Handle custom field submission
 	foreach( $t_related_custom_field_ids as $t_id ) {
 		# Do not set custom field value if user has no write access.
-		if( !custom_field_has_write_access( $t_id, $t_bug_id ) ) {
+		if( !$t_def['display_report'] || !custom_field_has_write_access( $t_id, $t_bug_id ) ) {
 			continue;
 		}
 
