From 75a43d9c1a5a6ac84fae363734e17952b327f364 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sat, 30 Apr 2011 13:20:38 -0600 Subject: [PATCH] ISBN checking now correctly flags ISBNs with all same digits as invalid --- src/calibre/ebooks/metadata/__init__.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/calibre/ebooks/metadata/__init__.py b/src/calibre/ebooks/metadata/__init__.py index 2ae5f3ade5..9c7838cb2c 100644 --- a/src/calibre/ebooks/metadata/__init__.py +++ b/src/calibre/ebooks/metadata/__init__.py @@ -274,6 +274,9 @@ def check_isbn(isbn): if not isbn: return None isbn = re.sub(r'[^0-9X]', '', isbn.upper()) + all_same = re.match(r'(\d)\1{9,12}$', isbn) + if all_same is not None: + return None if len(isbn) == 10: return check_isbn10(isbn) if len(isbn) == 13: