title: Fragment already added - a bug
body: <p>I cant seem to replace the fragments without having the app crush. Tried reading about it before asking here but I couldn't find a definitive answer. It seems as if this is a bug(?)</p>
  
  <p>here is my code (fails in swtich case:1 with error that fragment main already added)</p>
  
  <pre><code> // Sound Cloud fragment
          mSoundCloudFrag = new SoundCloudFragment();
  
          // Add just the main player fragment
          main = new Play_Main();
  
          fm = getFragmentManager();
          FragmentTransaction ft = fm.beginTransaction();
          ft.add(R.id.frameContainer, main, "main");
          ft.commit();
          getFragmentManager().executePendingTransactions();
  
  
          // Navigation Drawer
          mNavigationItems = getResources().getStringArray(R.array.nav_drawer);
          mDrawer = (DrawerLayout) findViewById(R.id.drawer_layout);
          mDrawerList = (ListView) findViewById(R.id.left_drawer);
  
          mDrawerList.setAdapter(new ArrayAdapter&lt;String&gt;(this, R.layout.drawer_list_itm, mNavigationItems));
          mDrawerList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
              @Override
              public void onItemClick(AdapterView&lt;?&gt; parent, View view, int position, long id) {
  
                  switch (position) {
                      case 0: // Open the SoundCloud fragment
                          FragmentTransaction ft = fm.beginTransaction();
                          ft.replace(R.id.frameContainer, mSoundCloudFrag, "soundCloudFrag");
                          ft.commit();
  
                          mDrawer.closeDrawers();
  
                      case 1: // Local PC media player
                          FragmentTransaction ft2 = fm.beginTransaction();
                          ft2.replace(R.id.frameContainer, main, "main");
                          ft2.commit();
  
                          mDrawer.closeDrawers();
                  }
  
              }
          });
  </code></pre>