Archived:Information retrieved using the Publish and Subscribe keys defined in SaCls.h is incorrect (Known Issue)
The header file SaCls.hbelongs to the removed System Agent API. It is, however, maintained temporarily in the S60 SDK since the same keys can be used to access device status information (for example, whether unread messages are available in the Inbox) using the Publish and Subscribe API.
However, the header file was not updated and while the keys are valid, the enumerations that help decoding the values read from the keys are incorrect since they should all start with an entry signaling that the key is defined but not yet initialized. This is due to the fact that, once defined, an integer Publish and Subscribe key defaults to 0 so the value 0 is not safe to be used as the actual stored data.
What is now defined as:
ESAInboxEmpty, // 0 (with P&S could also mean "not initialized")
ESADocumentsInInbox // 1
ESAInboxUninitialized = 0,
ESAInboxEmpty, // 1
ESADocumentsInInbox // 2