Problem/Motivation

The core function entity_language returns NULL for field collection items. This is due to the fact that fc entities neither provide a language callback nor define a language entity key.

As a result if third-party code attempts to use entity_language() to determine a field language such as for example entity_metadata_field_get_language() it might end up returning NULL as well. In this example the calling entity_metadata_field_verbatim_get() assumes that the returned $langcode is never NULL and as a consequence fails to retrieve values from fields with LANGUAGE_NONE.

It is debatable if this is an issue with field collection or the entity module. In my opinion it wouldn't hurt to fix both, i.e. make field collection play well with entity_language() as well as fix entity_metadata_field_get_language() such that it can handle NULL returned from entity_language().

Proposed resolution

(Description of the proposed solution, the rationale behind it, and workarounds for people who cannot use the patch.)

Remaining tasks

?

User interface changes

?

API changes

?

Data model changes

None.

Comments

znerol created an issue.

znerol’s picture