Skip to content

Commit 5f70657

Browse files
authored
MINOR refactor to prevent AttributeError when accessing None (#1914)
* MINOR refactor to prevent AttributeError when accessing None * Minor fix * More cleanup
1 parent ca8bc22 commit 5f70657

File tree

2 files changed

+8
-10
lines changed

2 files changed

+8
-10
lines changed

src/confluent_kafka/schema_registry/json_schema.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -565,15 +565,14 @@ def __call__(self, data: bytes, ctx: Optional[SerializationContext] = None) -> U
565565
if self._registry is not None:
566566
writer_schema_raw = self._registry.get_schema(schema_id)
567567
writer_schema, writer_ref_registry = self._get_parsed_schema(writer_schema_raw)
568+
if subject is None:
569+
subject = self._subject_name_func(ctx, writer_schema.get("title"))
570+
if subject is not None:
571+
latest_schema = self._get_reader_schema(subject)
568572
else:
569573
writer_schema_raw = None
570574
writer_schema, writer_ref_registry = None, None
571575

572-
if subject is None:
573-
subject = self._subject_name_func(ctx, writer_schema.get("title"))
574-
if subject is not None and self._registry is not None:
575-
latest_schema = self._get_reader_schema(subject)
576-
577576
if latest_schema is not None:
578577
migrations = self._get_migrations(subject, writer_schema_raw, latest_schema, None)
579578
reader_schema_raw = latest_schema.schema

src/confluent_kafka/schema_registry/protobuf.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -861,15 +861,14 @@ def __call__(self, data: bytes, ctx: Optional[SerializationContext] = None) -> O
861861
fd_proto, pool = self._get_parsed_schema(writer_schema_raw)
862862
writer_schema = pool.FindFileByName(fd_proto.name)
863863
writer_desc = self._get_message_desc(pool, writer_schema, msg_index)
864+
if subject is None:
865+
subject = self._subject_name_func(ctx, writer_desc.full_name)
866+
if subject is not None:
867+
latest_schema = self._get_reader_schema(subject, fmt='serialized')
864868
else:
865869
writer_schema_raw = None
866870
writer_schema = None
867871

868-
if subject is None:
869-
subject = self._subject_name_func(ctx, writer_desc.full_name)
870-
if subject is not None and self._registry is not None:
871-
latest_schema = self._get_reader_schema(subject, fmt='serialized')
872-
873872
if latest_schema is not None:
874873
migrations = self._get_migrations(subject, writer_schema_raw, latest_schema, None)
875874
reader_schema_raw = latest_schema.schema

0 commit comments

Comments
 (0)