Unicorn with delicious cookie
Nous utilisons des cookies pour améliorer votre expérience de navigation. En savoir plus
Accepter
to the top
>
>
>
Examples of errors detected by the V606…

Examples of errors detected by the V6067 diagnostic

V6067. Two or more case-branches perform the same actions.


Apache Dubbo

V6067 Two or more case-branches perform the same actions. JVMUtil.java(67), JVMUtil.java(71)


private static String getThreadDumpString(ThreadInfo threadInfo) {
  ....
  if (i == 0 && threadInfo.getLockInfo() != null) {
    Thread.State ts = threadInfo.getThreadState();
    switch (ts) {
      case BLOCKED:
        sb.append("\t-  blocked on " + threadInfo.getLockInfo());
        sb.append('\n');
        break;
      case WAITING:                                                     // <=
        sb.append("\t-  waiting on " + threadInfo.getLockInfo());
        sb.append('\n');
        break;
      case TIMED_WAITING:                                               // <=
        sb.append("\t-  waiting on " + threadInfo.getLockInfo());
        sb.append('\n');
        break;
      default:
    }
  }
  ....
}

Apache Hadoop

V6067 Two or more case-branches perform the same actions. TimelineEntityV2Converter.java(386), TimelineEntityV2Converter.java(389)


 public static ApplicationReport
 convertToApplicationReport(TimelineEntity entity)
{
  ....
  Set<TimelineMetric> metrics = entity.getMetrics();
  if (metrics != null) {
    long vcoreSeconds = 0;
    long memorySeconds = 0;
    long preemptedVcoreSeconds = 0;
    long preemptedMemorySeconds = 0;

    for (TimelineMetric metric : metrics) {
      switch (metric.getId()) {
      case ApplicationMetricsConstants.APP_CPU_METRICS:
        vcoreSeconds = getAverageValue(metric.getValues().values());
        break;
      case ApplicationMetricsConstants.APP_MEM_METRICS:
        memorySeconds = getAverageValue(metric.getValues().values());
        break;
      case ApplicationMetricsConstants.APP_MEM_PREEMPT_METRICS:
        preemptedVcoreSeconds = getAverageValue(metric.getValues().values());
        break;
      case ApplicationMetricsConstants.APP_CPU_PREEMPT_METRICS:
        preemptedVcoreSeconds = getAverageValue(metric.getValues().values());
        break;
      default:
        // Should not happen..
        break;
      }
    }
    ....
  }
  ....
}

GeoGebra

V6067 Two or more case-branches perform the same actions. PointNDFold.java(38), PointNDFold.java(43)


private static GeoElement doGetTemplate(
        Construction cons,
        GeoClass listElement
) {
    switch (listElement) {
    case POINT:
        return new GeoPoint(cons);
    case POINT3D:
        return (GeoElement) cons.getKernel().getGeoFactory().newPoint(3, cons);
    case VECTOR:
        return new GeoVector(cons);
    case VECTOR3D:
        return (GeoElement) cons.getKernel().getGeoFactory().newPoint(3, cons);
    }
    return new GeoPoint(cons);
}

GeoGebra

V6067 Two or more case-branches perform the same actions. RendererImplShadersD.java(243), RendererImplShadersD.java(245)


@Override
protected int getGLType(Type type) {
    switch (type) {
    case TRIANGLE_STRIP:
        return GL.GL_TRIANGLE_STRIP;
    case TRIANGLE_FAN:
        return GL.GL_TRIANGLE_STRIP;   // <=
    case TRIANGLES:
        return GL.GL_TRIANGLES;
    case LINE_LOOP:
        return GL.GL_LINE_LOOP;
    case LINE_STRIP:
        return GL.GL_LINE_STRIP;
    }

    return 0;
}

Most likely, GL.GL_TRIANGLE_FAN was intended


GeoGebra

V6067 Two or more case-branches perform the same actions. DrawConic3D.java(212), DrawConic3D.java(215)


@Override
protected boolean updateForItSelf() {
  ....
  if (conic.getType() == GeoConicNDConstants.CONIC_SINGLE_POINT) {
    ....
  } else {
    if (visible != Visible.FRUSTUM_INSIDE) { // no outline when frustum
      ....
      switch (conic.getType()) {
        case GeoConicNDConstants.CONIC_CIRCLE:
          updateEllipse(brush);               // <=
          break;
        case GeoConicNDConstants.CONIC_ELLIPSE:
          updateEllipse(brush);               // <=
          break;
        case GeoConicNDConstants.CONIC_HYPERBOLA:
          updateHyperbola(brush);
          break;
        case GeoConicNDConstants.CONIC_PARABOLA:
          updateParabola(brush);
          break;
        case GeoConicNDConstants.CONIC_DOUBLE_LINE:
          createTmpCoordsIfNeeded();
          brush.segment(tmpCoords1.setAdd3(m, tmpCoords1.setMul3(d, minmax[0])),
              tmpCoords2.setAdd3(m, tmpCoords2.setMul3(d, minmax[1])));
          break;
        case GeoConicNDConstants.CONIC_INTERSECTING_LINES:
        case GeoConicNDConstants.CONIC_PARALLEL_LINES:
          updateLines(brush);
          break;
        default:
          break;
      }
    }
  }
}

The class has updateCircle method which most likely was intended to be utilized here


close form

Remplissez le formulaire ci‑dessous en 2 étapes simples :

Vos coordonnées :

Étape 1
Félicitations ! Voici votre code promo !

Type de licence souhaité :

Étape 2
Team license
Enterprise licence
** En cliquant sur ce bouton, vous déclarez accepter notre politique de confidentialité
close form
Demandez des tarifs
Nouvelle licence
Renouvellement de licence
--Sélectionnez la devise--
USD
EUR
* En cliquant sur ce bouton, vous déclarez accepter notre politique de confidentialité

close form
La licence PVS‑Studio gratuit pour les spécialistes Microsoft MVP
close form
Pour obtenir la licence de votre projet open source, s’il vous plait rempliez ce formulaire
* En cliquant sur ce bouton, vous déclarez accepter notre politique de confidentialité

close form
I want to join the test
* En cliquant sur ce bouton, vous déclarez accepter notre politique de confidentialité

close form
check circle
Votre message a été envoyé.

Nous vous répondrons à


Si l'e-mail n'apparaît pas dans votre boîte de réception, recherchez-le dans l'un des dossiers suivants:

  • Promotion
  • Notifications
  • Spam