11/*
2- * Copyright (c) 1995, 2021 , Oracle and/or its affiliates. All rights reserved.
2+ * Copyright (c) 1995, 2022 , Oracle and/or its affiliates. All rights reserved.
33 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44 *
55 * This code is free software; you can redistribute it and/or modify it
@@ -611,10 +611,12 @@ public Map<String,List<String>> getHeaderFields() {
611611 * missing or malformed.
612612 */
613613 public int getHeaderFieldInt (String name , int Default ) {
614- String value = getHeaderField (name );
615- try {
616- return Integer .parseInt (value );
617- } catch (Exception e ) { }
614+ final String value = getHeaderField (name );
615+ if (value != null ) {
616+ try {
617+ return Integer .parseInt (value );
618+ } catch (NumberFormatException e ) { }
619+ }
618620 return Default ;
619621 }
620622
@@ -634,10 +636,12 @@ public int getHeaderFieldInt(String name, int Default) {
634636 * @since 1.7
635637 */
636638 public long getHeaderFieldLong (String name , long Default ) {
637- String value = getHeaderField (name );
638- try {
639- return Long .parseLong (value );
640- } catch (Exception e ) { }
639+ final String value = getHeaderField (name );
640+ if (value != null ) {
641+ try {
642+ return Long .parseLong (value );
643+ } catch (NumberFormatException e ) { }
644+ }
641645 return Default ;
642646 }
643647
@@ -659,10 +663,12 @@ public long getHeaderFieldLong(String name, long Default) {
659663 */
660664 @ SuppressWarnings ("deprecation" )
661665 public long getHeaderFieldDate (String name , long Default ) {
662- String value = getHeaderField (name );
663- try {
664- return Date .parse (value );
665- } catch (Exception e ) { }
666+ final String value = getHeaderField (name );
667+ if (value != null ) {
668+ try {
669+ return Date .parse (value );
670+ } catch (Exception e ) { }
671+ }
666672 return Default ;
667673 }
668674
0 commit comments