Buggy code:
private static final short FLAG_ESCAPE_MODEL_STRINGS = 2 ; private static final short FLAG_HAS_ROOT_MODEL = 4 ; private static final short FLAG_IGNORE_ATTRIBUTE_MODIFIER = 64 ; private static final short FLAG_IS_RENDERED_ONCE = 4096 ; private static final short FLAG_IS_RENDER_ALLOWED = 8192 ; private static final short FLAG_RENDER_BODY_ONLY = 32 ; private static final short FLAG_VERSIONED = 8 ; private static final short FLAG_VISIBLE = 16 ; private static final short FLAG_OUTPUT_MARKUP_ID = 16384 ; private static final String MARKUP_ID_ATTR_NAME = "id" ; private static Log log = LogFactory . getLog ( Component . class ) ; private List behaviors = null ; private short flags = ( ( ( ( Component . FLAG_VISIBLE ) | ( Component . FLAG_ESCAPE_MODEL_STRINGS ) ) | ( Component . FLAG_VERSIONED ) ) | ( Component . FLAG_ENABLED ) ) | ( Component . FLAG_IS_RENDER_ALLOWED ) ; private String id ; private IModel model ; private MarkupContainer parent ; private MetaDataEntry [ ] metaData ; public class ComponentModelChange extends Change { private static final long serialVersionUID = 1L ; private IModel model ; public ComponentModelChange ( IModel model ) { } public String toString ( ) { } public void undo ( ) { } } public static interface IVisitor { public static final Object CONTINUE_TRAVERSAL = null ; public static final Object STOP_TRAVERSAL = new Object ( ) ; public static final Object CONTINUE_TRAVERSAL_BUT_DONT_GO_DEEPER = new Object ( ) ; public Object component ( Component component ) { } } protected static final class EnabledChange extends Change { private static final long serialVersionUID = 1L ; private final Component component ; private final boolean enabled ; EnabledChange ( final Component component ) { } public String toString ( ) { } public void undo ( ) { } } protected static final class VisibilityChange extends Change { private static final long serialVersionUID = 1L ; private final Component component ; private final boolean visible ; VisibilityChange ( final Component component ) { } public String toString ( ) { } public void undo ( ) { } } public Component ( final String id ) { } public Component ( final String id , final IModel model ) { } public final Component add ( final IBehavior behavior ) { } public final boolean continueToOriginalDestination ( ) { } public final void debug ( final String message ) { } public void detachModels ( ) { } public final ValueMap getMarkupAttributes ( ) { } public final String getMarkupId ( ) { } public void doRender ( ) { } public final void error ( final String message ) { } public final void fatal ( final String message ) { } public final MarkupContainer findParent ( final Class c ) { } public final MarkupContainer findParentWithAssociatedMarkup ( ) { } public final Application getApplication ( ) { } public final IApplicationSettings getApplicationPages ( ) { } public final Settings getApplicationSettings ( ) { } public final List getBehaviors ( ) { } public final String getClassRelativePath ( ) { } public IConverter getConverter ( ) { } public final boolean getEscapeModelStrings ( ) { } public final FeedbackMessage getFeedbackMessage ( ) { } public String getId ( ) { } public final Locale getLocale ( ) { } public final Localizer getLocalizer ( ) { } public final Serializable getMetaData ( final MetaDataKey key ) { } public IModel getModel ( ) { } public final Object getModelObject ( ) { } public final String getModelObjectAsString ( ) { } public final Page getPage ( ) { } public final IPageFactory getPageFactory ( ) { } public final String getPageRelativePath ( ) { } public final MarkupContainer getParent ( ) { } public final String getPath ( ) { } public final boolean getRenderBodyOnly ( ) { <START_BUG> return getFlag ( Component . FLAG_RENDER_BODY_ONLY ) ; <END_BUG> } public final Request getRequest ( ) { } public final RequestCycle getRequestCycle ( ) { } public final Resource getResource ( ) { } public final Response getResponse ( ) { } public final Session getSession ( ) { } public long getSizeInBytes ( ) { } public final String getString ( final String key ) { } public final String getString ( final String key , final IModel model ) { } public final String getString ( final String key , final IModel model , final String defaultValue ) { } public final String getStyle ( ) { } public String getVariation ( ) { } public final boolean hasErrorMessage ( ) { } public final boolean hasFeedbackMessage ( ) { } public final void info ( final String message ) { } public final boolean isActionAuthorized ( Action action ) { } public final boolean isAncestorOf ( final Component component ) { } public boolean isEnabled ( ) { } public boolean isVersioned ( ) { } public boolean isVisible ( ) { } public final boolean isVisibleInHierarchy ( ) { } public final void modelChanged ( ) { } public final void modelChanging ( ) { } public final Page newPage ( final Class c ) { } public final Page newPage ( final Class c , final PageParameters parameters ) { } public final void redirectToInterceptPage ( final Page page ) { } public final void remove ( ) { } public final void render ( ) { } public final void render ( final MarkupStream markupStream ) { } public final void renderComponent ( final MarkupStream markupStream ) { } public void renderHead ( final HtmlHeaderContainer container ) { } public final void rendered ( ) { } public final boolean sameRootModel ( final Component component ) { } public final boolean sameRootModel ( final IModel model ) { } public final Component setEnabled ( final boolean enabled ) { } public final Component setEscapeModelStrings ( final boolean escapeMarkup ) { } public final void setMetaData ( final MetaDataKey key , final Serializable object ) { }

Fix:
return ( getFlag ( Component . FLAG_RENDER_BODY_ONLY ) ) && ( ! ( getFlag ( Component . FLAG_OUTPUT_MARKUP_ID ) ) ) ;