Skip to main content
Inspiring
July 19, 2007
Question

[IDCS2 Mac] Bothersome "High ID" Assert

  • July 19, 2007
  • 5 replies
  • 592 views
Hi Folks,

Have any of you encountered this...

I just got an InDesign Prefix ID and it is causing the following assert to fire when I quit the ID 4.0.5 debug build with my plug-in loaded.

StandardBossIterator::Next() - This tag has a rather high ID: 0x105d03. Is it valid?

The exact same assert happens at least 5 times when quitting ID Debug. It's annoying because I have to click through each assert in the CodeWarrior debugger. My main concern is that I'm afraid that I'm going to miss a serious assert thinking that it's just the "high ID" assert.

I'm using other Implementation IDs (e.g., for a kDialogBoss' observer and dialog controller) that don't cause this assert. The assert references the ID of kMyPictureControlViewImpl (see below):
Class

{
kMyPitcureWidgetBoss,
kPictureWidgetBoss,
{
IID_ICONTROLVIEW, kMyPictureControlViewImpl,
}
},

My Adobe assigned ID is 0x105d00, so this number is within my assigned range, so the answer to the assert's question is, "YES!!! it is valid, and please stop asserting!." ;-)

I tried using an ID I have from an old project (a much lower ID number), and the assert does not fire. I'm using the latest CS2 SDK and ID 4.0.5 Debug.

Any ideas on why this is happening only for the one boss, and how to keep it from firing?

Thanks in advance!

-- Jim
This topic has been closed for replies.

5 replies

Inspiring
August 9, 2007
Noel,

You bring up a great point! Good catch!

How about this?:
#define kMyAssignedPrefix     0x105d00  // My Adobe assigned prefix

#ifdef DEBUG
#define kMyPrefixNumber 0xb3390 // Borrowed from CustomDataLinkUI
#else
#define kMyPrefixNumber kMyAssignedPrefix
#endif
// Always use the assigned prefix for string prefixing
#define kMyStringPrefix SDK_DEF_STRINGIZE(kMyAssignedPrefix)

I believe this should do the trick.

Thanks!

-- Jim
Participant
August 9, 2007
Jim:

I'm having the same problems since the last ID i got was a high one. Here's a question: How are you going to know if you have any string collisions if you can't run the debug version of the build with prefix you're going to use for the release?

Noel.
Inspiring
July 21, 2007
I have devised a workaround.

I borrowed a "low value" Prefix ID from one of the SDK sample plug-ins for my debug build--a sample plug-in that I'm not likely to run when doing debugging of my current plug-in. For my release build, I use my assigned Prefix ID.
#ifdef DEBUG

#define kMyPrefixNumber 0xb3380 // Borrowed from CustomDataLinkUI
#else // Release
#define kMyPrefixNumber 0x105d00 // My assigned prefix
#endif

It seems to do the trick.

HTH!

-- Jim
Inspiring
July 20, 2007
Hans,

Sadly, I do not have a solution. If I find out something, I'll post it here.

I don't know if there is anything that can be done...I mean, the assert has got to be inside of a library or plug-in, right?

Thanks for replying Hans. I feel better knowing that I'm not the only one.

Cheers!

-- Jim
Inspiring
July 20, 2007
Hi

I have the same problem.

Did you find a solution? (Except the using of another implementation ID)

Thanks
Hans