Buggy code:
public class ProfileAdapter extends RecyclerView . Adapter < RecyclerView . ViewHolder > { private Cursor mCursor ; private Context mContext ; private ULoader mULoader ; private final Resources mResources ; private List < ProfileAdapter . ViewTypes > mUsedTypes ; private List < UserCounterAdapter . Counter > mCounters ; private LayoutInflater mInflater ; private List < ProfileAdapter . CommonInfo > mMainInfo ; private List < ProfileAdapter . CommonInfo > mContacts ; private List < ProfileAdapter . CommonInfo > mBeliefs ; private List < ProfileAdapter . CommonInfo > mPersonalInfo ; private OnProfileClick mOnProfileClick ; private String mUserId ; private enum ViewTypes { HEAD , STATUS , COUNTERS , MAIN_INFO , CONTACTS , BELIEFS , PERSONAL ; } private static class StatusViewHolder extends RecyclerView . ViewHolder { private TextView mUserStatus ; private StatusViewHolder ( View v ) { } } private static class CounterViewHolder extends RecyclerView . ViewHolder { private GridView mCounterGrid ; private CounterViewHolder ( View v ) { } } private static class HeadViewHolder extends RecyclerView . ViewHolder { private View mHead ; private ImageView mProfileImage ; private ImageView mOnlineStatusIcon ; private TextView mUserName ; private TextView mOnlineStatus ; private TextView mUserStatus ; private HeadViewHolder ( View v ) { } } private static class CommonViewHolder extends RecyclerView . ViewHolder { private ViewGroup mContainer ; private CommonViewHolder ( View v ) { } } public ProfileAdapter ( Context context , Cursor cursor , ProfileFragment . OnProfileClick onProfileClick , String userId ) { } @ Override public int getItemViewType ( int position ) { } @ Override public ViewHolder onCreateViewHolder ( ViewGroup parent , int viewType ) { } @ Override public void onBindViewHolder ( RecyclerView . ViewHolder holder , int position ) { if ( ( ( mCursor ) == null ) || ( mCursor . isClosed ( ) ) ) { return ; } ProfileAdapter . ViewTypes [ ] types = ProfileAdapter . ViewTypes . values ( ) ; switch ( types [ getItemViewType ( position ) ] ) { case HEAD : ProfileAdapter . HeadViewHolder headHolder = ( ( ProfileAdapter . HeadViewHolder ) ( holder ) ) ; mULoader . loadImage ( CursorUtils . getString ( mCursor , COLUMN_PHOTO_MAX_ORIG ) , headHolder . mProfileImage ) ; headHolder . mUserName . setText ( CursorUtils . getString ( mCursor , COLUMN_FULL_NAME ) ) ; headHolder . mUserStatus . setText ( CursorUtils . getString ( mCursor , COLUMN_STATUS ) ) ; int onlineMobile = CursorUtils . getInt ( mCursor , COLUMN_ONLINE_MOBILE ) ; int online = CursorUtils . getInt ( mCursor , COLUMN_ONLINE ) ; int offlinePlatform = CursorUtils . getInt ( mCursor , COLUMN_LAST_SEEN_PLATFORM ) ; String onlineStatus = mResources . getString ( ( online == 1 ? string . online : string . last_seen ) ) ; if ( online == 0 ) { <START_BUG> long time = ( CursorUtils . getLong ( mCursor , COLUMN_LAST_SEEN_TIME ) ) * 1000 ; <END_BUG> String date = DateUtils . getDateString ( time ) ; onlineStatus += "<seq2seq4repair_space>" + date ; } headHolder . mOnlineStatus . setText ( onlineStatus ) ; if ( ( onlineMobile == 1 ) || ( offlinePlatform <= 5 ) ) { headHolder . mOnlineStatusIcon . setVisibility ( VISIBLE ) ; headHolder . mOnlineStatusIcon . setImageResource ( ic_phone ) ; } else { headHolder . mOnlineStatusIcon . setVisibility ( INVISIBLE ) ; } headHolder . mHead . setOnClickListener ( new View . OnClickListener ( ) { @ Override public void onClick ( View v ) { if ( ( mOnProfileClick ) != null ) { mOnProfileClick . onProfileWallClick ( mUserId ) ; } } } ) ; break ; case STATUS : ProfileAdapter . StatusViewHolder statusHolder = ( ( ProfileAdapter . StatusViewHolder ) ( holder ) ) ; statusHolder . mUserStatus . setText ( CursorUtils . getString ( mCursor , COLUMN_STATUS ) ) ; break ; case CONTACTS : ProfileAdapter . CommonViewHolder contactsContHolder = ( ( ProfileAdapter . CommonViewHolder ) ( holder ) ) ; ViewGroup contactsContainer = contactsContHolder . mContainer ; contactsContainer . removeAllViews ( ) ; addTitle ( contactsContainer , contacts ) ; for ( int i = 0 ; i < ( mContacts . size ( ) ) ; i ++ ) { addItemToContainer ( contactsContainer , mContacts . get ( i ) ) ; if ( i < ( ( mContacts . size ( ) ) - 1 ) ) { addSplitter ( contactsContainer , false ) ; } } break ; case BELIEFS : ProfileAdapter . CommonViewHolder beliefContHolder = ( ( ProfileAdapter . CommonViewHolder ) ( holder ) ) ; ViewGroup beliefsContainer = beliefContHolder . mContainer ; beliefsContainer . removeAllViews ( ) ; addTitle ( beliefsContainer , beliefs ) ; for ( int i = 0 ; i < ( mBeliefs . size ( ) ) ; i ++ ) { addItemToContainer ( beliefsContainer , mBeliefs . get ( i ) ) ; if ( i < ( ( mBeliefs . size ( ) ) - 1 ) ) { addSplitter ( beliefsContainer , false ) ; } } break ; case PERSONAL : ProfileAdapter . CommonViewHolder personalHolder = ( ( ProfileAdapter . CommonViewHolder ) ( holder ) ) ; ViewGroup personalContainer = personalHolder . mContainer ; personalContainer . removeAllViews ( ) ; addTitle ( personalContainer , personal_info ) ; for ( int i = 0 ; i < ( mPersonalInfo . size ( ) ) ; i ++ ) { addItemToContainer ( personalContainer , mPersonalInfo . get ( i ) ) ; if ( i < ( ( mPersonalInfo . size ( ) ) - 1 ) ) { addSplitter ( personalContainer , false ) ; } } break ; case COUNTERS : ProfileAdapter . CounterViewHolder counterViewHolder = ( ( ProfileAdapter . CounterViewHolder ) ( holder ) ) ; float counterHeightInDp = mResources . getDimension ( user_info_counter_height ) ; float spacingInDp = mResources . getDimension ( user_info_counter_grid_spacing ) ; int columnCount = mResources . getInteger ( user_info_column_count ) ;

Fix:
long time = CursorUtils . getLong ( mCursor , COLUMN_LAST_SEEN_TIME ) ;